[python] 10진수<-> 2진수, 8진수, 16진수의 진수 변환

·2023년 4월 11일

python

목록 보기
1/5
post-thumbnail

10진수 -> 2진수, 8진수, 16진수

내장 함수 이용하기

파이썬에는 10진수에서 2진수, 8진수, 16진수로 변환하기 위한 내장함수가 존재하기 때문에 이를 이용하면 된다.

  • 10진수 -> 2진수(binary): bin()
  • 10진수 -> 8진수(octal): oct()
  • 10진수 -> 16진수(hexadecimal): hex()
a = 10

b = bin(a)
print(b) #0b1010

o = oct(a)
print(o) #0o12

h = hex(a)
print(h) #0xa

%연산자 이용하기

print()에서 %연산자를 이용하여 간단하게 나타낼 수 있다.

  • 10진수 -> 8진수: %o
  • 10진수 -> 16진수: %X (16진수의 대문자로 출력), %x (16진수의 소문자로 출력)

%연산자를 이용하여 나타낼 경우, 8진수 앞의 0o, 16진수 앞의 0x는 생략된다.

a = 10

print('%o'%a) #12
print('%X'%a) #A
print('%x'%a) #a

2진수, 8진수, 16진수 -> 10진수

int형 변환 이용

n진수 -> 10진수: int(숫자, n)

#2진수 -> 10진수
b = int(`0b1010`, 2)
print(b) #10

#8진수 -> 10진수
o = int('0o12', 8)
print(o) #10

# 16진수 -> 10진수
h = int('0xa', 16)
print(h) #10

0개의 댓글