본문 바로가기

언어/Python

[ 파이썬 / Python ] 진수 변환하기

반응형

1. 2진수 변환: bin()

bin() 함수는 정수를 2진수 문자열로 변환합니다.

n = 10
binary_representation = bin(n)
print(binary_representation)  # 출력: '0b1010'

2. 8진수 변환: oct()

oct() 함수는 정수를 8진수 문자열로 변환합니다.

n = 10
octal_representation = oct(n)
print(octal_representation)  # 출력: '0o12'

3. 16진수 변환: hex()

hex() 함수는 정수를 16진수 문자열로 변환합니다.

n = 10
hexadecimal_representation = hex(n)
print(hexadecimal_representation)  # 출력: '0xa'

4. 문자열을 정수로 변환: int()

int() 함수는 문자열을 정수로 변환할 수 있습니다. 이때 변환할 문자열이 특정 진수의 숫자일 경우, 두 번째 매개변수로 해당 진수를 지정해주면 됩니다.

binary_string = '1010'
binary_to_decimal = int(binary_string, 2)
print(binary_to_decimal)  # 출력: 10

octal_string = '12'
octal_to_decimal = int(octal_string, 8)
print(octal_to_decimal)  # 출력: 10

hexadecimal_string = 'a'
hexadecimal_to_decimal = int(hexadecimal_string, 16)
print(hexadecimal_to_decimal)  # 출력: 10

5. 예제

모든 함수들을 사용하여 숫자 변환을 예제로 보여드리겠습니다.

# 정수 선언
n = 42

# 2진수 변환
binary = bin(n)
print(f'{n}의 2진수 표현: {binary}')

# 8진수 변환
octal = oct(n)
print(f'{n}의 8진수 표현: {octal}')

# 16진수 변환
hexadecimal = hex(n)
print(f'{n}의 16진수 표현: {hexadecimal}')

# 2진수 문자열을 정수로 변환
binary_string = '101010'
decimal_from_binary = int(binary_string, 2)
print(f'2진수 문자열 {binary_string}를 10진수로 변환: {decimal_from_binary}')

# 8진수 문자열을 정수로 변환
octal_string = '52'
decimal_from_octal = int(octal_string, 8)
print(f'8진수 문자열 {octal_string}를 10진수로 변환: {decimal_from_octal}')

# 16진수 문자열을 정수로 변환
hexadecimal_string = '2a'
decimal_from_hex = int(hexadecimal_string, 16)
print(f'16진수 문자열 {hexadecimal_string}를 10진수로 변환: {decimal_from_hex}')

이처럼 bin(), oct(), hex(), 그리고 int() 함수를 사용하여 다양한 진수 간의 변환을 손쉽게 수행할 수 있습니다.

반응형