자료형 - 숫자
number = 17
print(type(number), number) # <class 'int'> 17
number = 17.0
print(type(number), number) # <class 'float'> 17.0
파이썬의 숫자형에는 크게 두 종류가 있는데, 정수형(int)과 부동소수형(float)이다.
물론, 이 글의 맨 아래에 등장하는 복소수형(complex)도 있다.
number = 17/3
print(type(number), number) # <class 'float'> 5.666666666666667
number = 4/2
print(type(number), number) # <class 'float'> 2.0
정수형을 나눗셈 연산하면 부동소수형이 된다.
number = 17//3
print(type(number), number) # <class 'int'> 5
number = round( 17/3 )
print(type(number), number) # <class 'int'> 6
number = round( 17/3 , 2)
print(type(number), number) # <class 'int'> 5.67
number = 17%3
print(type(number), number) # <class 'int'> 2
나눗셈 연산의 결과를 정수형으로 얻고 싶은 때에는 // 연산자를 사용할 수 있는데 소숫점 이하 부분은 버려진다. 이 외에도 round() 함수를 사용해서 반올림 시킬 수도 있다. round() 함수의 두번째 매개변수는 소숫점 이하 자릿수. 그리고 다른 프로그래밍 언어와 마찬가지로 나머지 연산자(%)가 존재한다.
number = int( 17.6)
print(type(number), number) # <class 'int'> 17
number = float( 17)
print(type(number), number) # <class 'float'> 17.0
int()와 float()은 언뜻보기에 형변환 함수인 듯하지만, 실제로는 int와 float 클래스의 인스턴스를 생성하는 것이다.
number = 2.98e10
print(type(number), number) # <class 'float'> 29800000000.0
공학적 표기법을 사용할 수도 있고,
number = 0b0101 # 2진수 표기법
print(type(number), number) # <class 'int'> 5
number = 0o17 # 8진수 표기법
print(type(number), number) # <class 'int'> 15
number = 0x3f # 16진수 표기법
print(type(number), number) # <class 'int'> 63
2진수, 8진수 혹은 16진수로 표기하는 것도 가능하며,
number = 3-2j # 복소수
print(type(number), number) # <class 'complex'> (3-2j)
print(number.real) # 실수부
print(number.imag) # 허수부
복소수 표현도 있다.
댓글
댓글 쓰기