본문 바로가기

BackEnd/Python

파이썬의 숫자 표현과 변수 그리고 input()

728x90
반응형

일반적으로 숫자는 소수점이 없는 숫자인 정수형과 소수점이 있는 숫자인 실수형으로 나누어지는것은 잘 알고 있을겁니다.

각각의 표현의 예시로 [1234], [1234.567]과 같이 표현할 수 있습니다.

그렇다면 파이썬에서는 숫자 표현을 어떻게 할까요?

 

지난 포스팅에서 작성했던 print() 함수를 기억하시나요? 

바로 print() 함수의 괄호 안에 숫자를 입력하면 됩니다. 

숫자 표현과 타입

바로 위와 같이 말이죠

4개의 print() 함수의 괄호 안을 살펴보면 (1234), (1234.56), type(1234), type(1234.56)이 입력 되어 있는 것을 볼 수 있습니다.

 

먼저 2,3번의 print() 함수와 같이 기본적으로 숫자표현을 합니다. 그 다음으로 4,5번의 print() 함수를 보면 괄호안에 type() 함수가 있고 type() 함수 안에는 [1234]와 [1234.56]이 담겨 있습니다. 

여기서 type은 무엇을 의미할까요? 

결과를 확인해봅시다.

숫자 표현과 타입의 결과

결과를 확인해보니 type() 함수 안에 들어간 숫자들은 'int', 'float'로 출력이 되었습니다.

이는 type() 함수 안에 있던 숫자들이 정수를 의미하는 int와 부동소수점을 의미하는 float라는 것을 알 수 있죠

 

그렇게 중요하진 않지만 다음의 예문을 보겠습니다.

파이썬의 지수 표현 방식

위의 예시는 파이썬에서 지수를 표현하는 방법입니다. 먼저 0.52273은 float 타입입니다. 

그렇다면 옆에 붙어있는 e2와 e-2는 무엇일까요? 

예시를 입력하고 결과를 확인해봅시다.

지수 표현 방식 결과

결과를 확인해보니 [52.273]과 [0.0052273]이라는 결과가 나왔습니다.

그렇습니다! e2와 e-2는 소수점이 2자리만큼 이동한 것입니다.

이 표현은 자주 사용하지는 않지만 이런 표현 방식도 있다는 것만 알고 있으면 될것 같습니다.

 

파이썬에서의 사칙 연산

프로그램 언어에서 숫자에 대한 사칙 연산 방법은 흔히 볼 수 있습니다. 물론 파이썬에서도 마찬가지입니다.

사칙 연산

다음 예시는 사칙 연산 방법들을 작성하였습니다. 

각 연산자에 대한 설명과 구문은 아래 표로 만들었습니다.

연산자 설명 구문
+ 덧셈 숫자+숫자
- 뺄셈 숫자-숫자
* 곱셈 숫자*숫자
/ 나눗셈 숫자/숫자
// 정수 나누기 숫자//숫자
% 나머지 숫자%숫자
** 제곱 숫자**숫자

 사칙 연산 혼합 계산에서 계산을 하기 전에 우선 순위라는 것이 존재합니다. 

우선 순위는 곱셈/나눗셈 -> 덧셈/뺄셈의 우선 순위로 연산을 합니다. 

이는 파이썬에서도 동일하게 우선순위를 적용하여 연산을 합니다.

혼합 연산 우선 순위

다음과 같은 계산식이 있습니다.

계산 결과를 확인하면 아래와 같습니다.

계산 결과

계산 과정은 다음과 같이 계산을 합니다. 

풀이

혼합식에서 괄호가 감싸진 부분이 있다면 괄호가 감싸진 부분부터 계산을 진행하게 됩니다.

 

변수의 정의로는 값을 지정할 때 사용하는 식별자를 말합니다. 

변수를 활용하는 방법으로 3가지가 있습니다.

  • 변수를 선언한다.
  • 변수에 값을 할당한다.
  • 변수를 참조한다.

변수를 사용할 때 다른 프로그래밍 언어에서는 변수를 사용할 때 자료형에 대해 미리 선언을 하지만 파이썬의 경우

변수에 자료형을 지정하지 않기 때문에 같은 변수에 여러 종류의 자료형을 넣을 수 있습니다.

다만 TypeError 발생 확률이 높기에 파이썬에서도 하나의 변수 = 하나의 자료형을 넣는 것을 권장합니다.

 

다음 예시와 같이 변수를 선언하고 참조 하는 방법입니다.

변수 선언과 할당 참조

위 예시에는 pi와 r이라는 변수를 선언하고 각 변수에 [3.14159]와 [10]이라는 값을 할당하였습니다. 

print() 함수에는 변수를 참조하는 내용들이 괄호안에 담겨있습니다. 

실행하면 이들의 결과를 확인해볼수 있습니다.

참조 결과

 input() 함수는 사용자입력이라고 하며 파이썬에서는 명령프롬프트로에서 사용자로부터 데이터를 입력 받을 때 input()을 사용합니다. 이 때 input() 함수 괄호 안에 입력한 내용을 프롬프트 문자열이라고 합니다.

input과 프롬프트 문자열

예를 들어 변수 string에 input() 함수가 할당 되어 있으며 print() 함수에는 자료형과 자료에 대한 내용들이 할당되었다.

코드 결과를 확인해보면

실행 결과

입력항목에 [가나]라는 문자를 입력하고 [Enter]를 치게 되면 자료에는 [가나]가 들어가게 되고 문자열임을 알수있다.

여기서 [가나]라는 문자가 프롬프트 문자열이 된다.

위에 작성한 코드에 어느 자료를 입력하여도 문자열이 된다.

 

파이썬의 캐스트

캐스트 코드

다음의 코드는 문자열 <-> 숫자열 변환에 대한 코드이다.

먼저 문자열 -> 숫자열 변환 코드를 보면 string_a와 b에서 각각의 숫자(문자열)를 입력받는다.

그리고 int_a와 b는 앞서 입력한 string_a와 b의 문자열을 숫자열로 바꿔준다. 

출력 결과는 문자열은 연결된 값이 숫자열은 합한 값이 출력 될 것이다.

 

숫자열 -> 문자열의 경우 out_a와 b에는 [52]와 [33333.32]가 담겨 있는데 이는 숫자열이 아닌 문자열의 형태로 바뀌어진다.

출력 결과를 확인해보면 문자열로 변환되어 출력 되었음을 알 수 있다.

 

※자료형을 변환 할 때 주의 점으로 두가지가 있다.※

1. 숫자가 아닌 것을 숫자로 변환 하려 할 때

2. 소수점이 있는 숫자 형식의 문자열을 int()함수로 변환하려고 할 때

이 두가지를 주의 하지 않고 자료형 변환을 하게 되면 ValueError 예외가 발생한다.

 

format() 함수는 문자열이 가지고 있는 함수이며 중괄호{}를 포함한 문자열 뒤에 마침표(.)를 찍는다.

format() 함수 사용법

다음의 코드는 format() 함수의 예시이다. 

string_a는 format() 함수의 매개변수 10이 들어가있고 이를 출력하면 문자열 형태의 10이 출력 될 것이다.

 

아래의 코드는 format() 함수의 다양한 형태이며 

format_a에는 매개변수 1이 들어가 [1만원]이라는 문자열이 생성된다.

format_b에는 5000이 들어가게 되고 format_c와 d도 format() 함수의 괄호에 담겨진 변수, 문자, 다른 자료형 등을 넣을 수 있다. 

실행결과

결과는 위 사진과 같지만 주의할 점이 있다면 변수 format의 중괄호의 개수와 format() 함수 안의 매개변수의 개수가 같아야 한다. 개수가 서로 다르다면 IndexError가 발생한다.

 

이번 포스팅에서 파이썬의 숫자 입력과 변수의 선언과 할당, 참조, input(), format()에 대하여 작성하였습니다.

728x90
반응형

'BackEnd > Python' 카테고리의 다른 글

파이썬의 조건문 (1)  (0) 2022.03.25
파이썬의 불린  (0) 2022.03.25
파이썬의 자료형과 문자열 part.1  (0) 2021.12.10
파이썬의 주요 키워드와 뱀과 낙타  (0) 2021.10.08
파이썬을 설치하기  (0) 2021.04.07