파이썬 자료형, 숫자형
숫자형은 어떻게 만들고 사용할까?
정수형 integer
>>> a = 123 <- 양의 정수 대입
>>> a = -178 <- 음의 정수 대입
>>> a = 0 <- 숫자 0 대입
실수형 floating-point
>>> a =1.2
>>> a = -3.45
>>> a = 4.24E10 <- 4.24 x 10^10
>>> a = 4.24e-10 <- 4.24x 10^-10
8진수
>>> a = 0o177
>>> print(a)
127 <- 1 x 8^2 + 7 x 8 + 7 = 127
8진수 (Octal)
8진수는 0부터 7까지의 숫자를 사용합니다. 8진수는 파이썬에서 0o로 시작합니다.
예시:
계산 방법:
- 1 x 8^2 + 7 x 8^1 + 7 x 8^0
- 1 x 64 + 7 x 8 + 7 x 1
- 64 + 56 + 7 = 127
그래서 이 됩니다. 따라서 출력 결과는 127입니다.
16진수 (Hexadecimal)
16진수는 09와 AF (또는 a~f)로 구성된 수 체계입니다. A는 10, B는 11, C는 12, D는 13, E는 14, F는 15를 나타냅니다. 파이썬에서는 숫자 앞에 0x 또는 0X를 붙여 16진수를 나타냅니다.
b = 0xABC
print(b) # 2748 출력
계산 방법:
- B (11) x 16^2 + B (11) x 16 + C (12)
- 10 x 16^2 + 11 x 16^1 + 12 x 16^0
- 10 x 256 + 11 x 16 + 12 x 1
- 2560 + 176 + 12 = 2748
추가 예제와 설명
파이썬에서는 다양한 진수 표기법을 사용할 수 있습니다. 아래는 10진수, 8진수, 16진수 간의 변환 예제입니다.
decimal_number = 255
# 8진수 (Octal)
octal_number = 0o377
print(octal_number) # 255
# 16진수 (Hexadecimal)
hexadecimal_number = 0xFF
print(hexadecimal_number) # 255
# 진수 변환 예제
print(int('377', 8)) # 8진수 문자열을 10진수로 변환 -> 255
print(int('FF', 16)) # 16진수 문자열을 10진수로 변환 -> 255
파이썬 숫자형
파이썬에서 숫자형은 크게 정수(int), 부동 소수점(float), 복소수(complex)로 나뉩니다.
- 정수 (int): 양수나 음수의 정수형 숫자. 크기에 제한이 없음.
- 부동 소수점 (float): 소수점이 있는 숫자. 대략 15자리의 십진수를 정확히 표현할 수 있음.
- 복소수 (complex): 실수부와 허수부로 이루어진 숫자. 예: 3 + 4j
예시:
# 정수형
integer_number = 123
# 부동 소수점
float_number = 123.456
# 복소수
complex_number = 3 + 4j
print(type(integer_number)) # <class 'int'>
print(type(float_number)) # <class 'float'>
print(type(complex_number)) # <class 'complex'>
숫자형을 활용하기 위한 연산자
사칙연산
파이썬에서는 기본적인 사칙 연산을 수행할 수 있는 다양한 연산자를 제공합니다. 여기서 사칙 연산이란 덧셈, 뺄셈, 곱셈, 나눗셈을 의미합니다. 각 연산자의 사용법과 예시는 다음과 같습니다.
1. 덧셈 (Addition)
- 연산자: +
예시:
a = 10
b = 5
result = a + b
print(result) # 출력: 15
2. 뺄셈 (Subtraction)
- 연산자:
예시:
a = 10
b = 5
result = a - b
print(result) # 출력: 5
3. 곱셈 (Multiplication)
- 연산자: *
예시:
a = 10
b = 5
result = a * b
print(result) # 출력: 50
4. 나눗셈 (Division)
- 연산자: /
예시:
a = 10
b = 5
result = a / b
print(result) # 출력: 2.0
5. 나머지 (Modulus)
- 연산자: %
예시:
a = 10
b = 3
result = a % b
print(result) # 출력: 1
6. 거듭제곱 (Exponentiation)
- 연산자: **
예시:
a = 2
b = 3
result = a ** b
print(result) # 출력: 8
7. 몫 (Floor Division)
- 연산자: //
예시:
a = 10
b = 3
result = a // b
print(result) # 출력: 3
예제
모든 연산을 한 코드에 모아 예시를 보여드리겠습니다.
a = 10
b = 5
# 덧셈
addition = a + b
print('덧셈:', addition) # 출력: 덧셈: 15
# 뺄셈
subtraction = a - b
print('뺄셈:', subtraction) # 출력: 뺄셈: 5
# 곱셈
multiplication = a * b
print('곱셈:', multiplication) # 출력: 곱셈: 50
# 나눗셈
division = a / b
print('나눗셈:', division) # 출력: 나눗셈: 2.0
# 나머지
modulus = a % b
print('나머지:', modulus) # 출력: 나머지: 0
# 거듭제곱
exponentiation = a ** b
print('거듭제곱:', exponentiation) # 출력: 거듭제곱: 100000
# 몫
floor_division = a // b
print('몫:', floor_division) # 출력: 몫: 2
x와 y제곱을 나타내는 ** 연산자
파이썬에서 ** 연산자는 거듭제곱을 나타냅니다. 즉, x ** y는 "x의 y제곱"을 의미합니다.
x = 2
y = 3
result = x ** y
print(result) # 출력: 8
또 다른 예시
a = 5
b = 4
result = a ** b
print(result) # 출력: 625
위 코드에서 a ** b는 5의 4제곱을 계산하며, 결과는 625입니다.
나눗셈 후 나머지를 리턴하는 % 연산자
파이썬에서 % 연산자는 나눗셈 후 나머지를 반환하는 연산자입니다. 두 숫자 x와 y에 대해 x % y는 x를 y로 나눈 후의 나머지를 계산합니다.
예시:
x = 10
y = 3
result = x % y
print(result) # 출력: 1
x % y는 10을 3으로 나눈 나머지를 계산하며, 결과는 1입니다.
예시:
a = 27
b = 4
result = a % b
print(result) # 출력: 3
a % b는 27을 4로 나눈 나머지를 계산하며, 결과는 3입니다.
음수와 함께 사용
m = -10
n = 3
result = m % n
print(result) # 출력: 2(왜 결과가 2가 되지???:알때까지하자)
m % n는 -10을 3으로 나눈 나머지를 계산하며, 결과는 2입니다. 이는 파이썬에서 나머지가 항상 나누는 수 n의 부호를 따르기 때문입니다.
% 연산자의 사용 예제
# 짝수 홀수 판별
number = 15
if number % 2 == 0:
print(f"{number}는 짝수입니다.")
else:
print(f"{number}는 홀수입니다.")
# 특정 주기마다 반복되는 작업 수행
for i in range(1, 11):
if i % 3 == 0:
print(f"{i}는 3의 배수입니다.")
이처럼 % 연산자는 나머지를 계산할 때 유용하며, 짝수와 홀수를 판별하거나 특정 주기마다 작업을 수행할 때 자주 사용됩니다.
나눗셈 후 몫을 리턴하는 // 연산자
파이썬에서 // 연산자는 나눗셈 후 몫을 반환하는 연산자입니다. 이는 "정수 나눗셈"이라고도 하며, 소수점 이하를 버리고 정수 부분만 반환합니다.
예시:
a = 10
b = 3
result = a // b
print(result) # 출력: 3
위 코드에서 a // b는 10을 3으로 나눈 몫을 계산합니다. 10을 3으로 나누면 3.333...이지만, // 연산자는 정수 부분만 반환하므로 결과는 3입니다.
음수를 포함한 예시:
a = -10
b = 3
result = a // b
print(result) # 출력: -4
여기서 a // b는 -10을 3으로 나눈 몫을 계산합니다. -10을 3으로 나누면 -3.333...이지만, // 연산자는 내림(floor)하여 정수 부분만 반환하므로 결과는 -4입니다.
추가 예시:
# 양수 예시
a = 20
b = 4
result = a // b
print(result) # 출력: 5
# 음수 예시
a = -20
b = 4
result = a // b
print(result) # 출력: -5
# 소수 나누기
a = 7.5
b = 2
result = a // b
print(result) # 출력: 3.0
위 예시에서 // 연산자는 소수점 이하를 버리고 정수 부분만 반환합니다. 음수의 경우에도 동일하게 작동하여 내림(floor)하여 결과를 반환합니다.
요약
- // 연산자는 두 수를 나눈 후 정수 몫을 반환합니다.
- 소수점 이하를 버리고 정수 부분만 남깁니다.
- 음수의 경우 내림(floor)하여 결과를 반환합니다.
이렇게 // 연산자는 간단하게 정수 나눗셈을 수행할 수 있는 유용한 연산자입니다. 추가로 궁금한 점이 있으면 언제든지 질문해 주세요!
'파이썬로드' 카테고리의 다른 글
파이썬 리스트 자료형, 리스트의 인덱싱과 슬라이싱 (0) | 2024.06.23 |
---|---|
파이썬 리스트 자료형, 리스트는 어떻게 만들고 사용할까? (0) | 2024.06.23 |
파이썬 기초, 자료형 data type 문자열 만들기부터 (0) | 2024.06.21 |
파이썬 텍스트 에디터 IDLE 개발 전용 폰트 D2Coding 설정하기 (1) | 2024.06.14 |
파이썬으로 무엇을 할 수 있나요? (0) | 2024.06.14 |