Data type Numeric
Table of contents
Numeric Type
파이썬에서는 숫자형을 정수(int), 실수(float), 복소수(complex) 로 구분함
▸ 파이썬에서는 숫자의 자료형에 따라 결과가 달라질 수 있기 때문에 자료형을 정확하게 구분할 필요가 있음
int
정수형으로서 양의 정수, 음의 정수 그리고 0으로 정의
예시 : int
a = 10;
b = -10;
c = 0;
print(a)
print(b)
print(c)
float
실수형 (floating-point) 으로서 소숫점을 가지는 숫자를 정의
▸ 실수와 정수를 함께 사용하면 표현 범위가 넓은 실수로 계산됨
→ 즉, 실수가 정수보다 표현범위가 넓기 때문에 실수와 정수의 결과는 실수로 처리됨
8진수 : 0o or 0O
▸ ex) f = 0o7
16진수 : 0x or 0X
▸ ex) g = 0xa
complex
복소수형으로서 복소수를 정의하는 데에는 2가지 방법으로 정의
복소수 : a+bi로 나타낼 수 있는 숫자로 a는 실수부, b는 허수부를 의미
수학 교과서에서는 허수단위를 i로 표현하지만 파이썬에서는 소문자 j or 대문자 J로 허수부를 표현
Numeric Operators
숫자에 대한 연산자는 +, -, *, /, %, //연산자를 활용하여 숫자형 자료의 연산을 수행함
사칙연산 : +. -. *, /
print("더하기 = ", 1+1) //2 print("빼기 = ", 1-1) //0 print("곱하기 = ", 3*1) //3 print("나누기 = ", 1/1) //1.0
제곱연산 : **
예제
print("제곱연산 =" , 2**3)
나머지연산 : %
나눗셈 결과 나머지 버리는 연산 : //
▸ 이 연산에서 주의할 점은 정수형과 실수형의 결과가 상이함
예제
print("나머지 연산", 7%4) print("몫만 반환하는 연산 = ", 7//4) print("몫만 반환하는 연산 = ", 7.0//1) print("몫만 반환하는 연산 = ", 7.0//0.1) #정밀도 문제 상존
부호연산
예제
x = 1 print("부호연산 =", +x) print("부호연산 =", -x)
Numeric Function
abs() : 절대값
int() : 실수를 정수로 변환하는 함수
float() : 정수를 실수로 변환하는 함수
divmod(x, y) : x//y 결과와 x%y의 결과를 한 쌍으로 반환
pow(x, y) : x**y의 결과를 반환하는 함수
예제
print("절대값 = ", abs(-1))
print("정수변환 = ", int(1.0), type(int(1.0)))
print("실수변환 = ", float(1), type(float(1)))
print("몫과 나머지 연산 = ", divmod(7, 4))
print("제곱근 = ", pow(2, 3))