<aside> 💡 파이썬의 숫자 자료형에는 정수를 표현하는 int, 실수를 표현하는 float, 그리고 복소수를 표현하는 complex가 있습니다.

</aside>

int : 정수 자료형

int_1 = 123
int_2 = 123456789
int_3 = 123_456_789 # 긴 숫자를 가독성 좋게 표현 (_의 위치 무관)

int_1_type = type(int_1)
int_2_type = type(int_2)
int_3_type = type(int_3)

pass
int_bin = 0b10101   # 2진법
int_oct = 0o777     # 8진법
int_hex = 0xA5F     # 16진법

# 💡 type의 결과를 str로 감싸면 Special Variables 펼치지 않고도 바로 표시
# print 시에는 필요 없음
int_bin_type = str(type(int_bin))
int_oct_type = str(type(int_oct))
int_hex_type = str(type(int_hex))

int_plus = 123 + int_bin + int_hex # 상호간 계산 가능

pass

⭐ 파이썬에서 int가 차지하는 메모리 크기는 유동적

import sys

# 각 정수가 차지하는 바이트 수
int_size_1 = sys.getsizeof(1)
int_size_2 = sys.getsizeof(365)
int_size_3 = sys.getsizeof(9999999)

int_size_4 = sys.getsizeof(100 ** 10) # 100의 10승
int_size_5 = sys.getsizeof(100 ** 100) # 100의 100승

pass

<aside> ❓ 파이썬에는 표현할 수 있는 정수의 범위에 언어 차원에서의 한계가 없어?

</aside>

이항 연산자 binary operators

산자 종류 연산자 기호 설명 비고
덧셈 + 더하기
뺄셈 - 빼기
곱셈 * 곱하기
나눗셈 / 나누기 실수(float) 반환
정수 나눗셈 // 나눈 뒤 내림
나머지 % 나머지 반환
거듭제곱 ** 거듭제곱 음수로 연산시 실수 반환
# 💡 반환 : [바꿔 쑬 수 있다]고 이해
add = 5 + 3
sub = 10 - 4
mul = 7 * 2
div = 8 / 2
int_div = 9 // 2
mod = 10 % 3
pow1 = 2 ** 3
pow2 = 2 ** -3

add_type = str(type(add))
div_type = str(type(div)) # 💡 확인
int_div_type = str(type(int_div))

pow1_type = str(type(pow1))
pow2_type = str(type(pow2)) # 💡 확인

pass