ETC

[Python] 2진수˙8진수˙10진수˙16진수 변환

Yejin 2021. 8. 15. 22:29

# 10진수 → 2, 8, 16진수

bin(), oct(), hex() 이용

10진수 → 2진수 : bin()

10진수 → 8진수 : oct()

10진수 → 16진수 : hex()

a = 10

bin = bin(a)
oct = oct(a)
hex = hex(a)

print(bin) #0b1010
print(oct) #0o12
print(hex) #0xa

 

format() 이용

#을 제거하면 0b, 0o, 0x같은 접두어가 빠진 형태가 출력됨

a = 10

bin = format(a, '#b')
oct = format(a, '#o')
hex = format(a, '#x')

print(bin)
print(oct)
print(hex)

 

 

# 2, 8, 16진수  → 10진수

int(문자열, 진수)

문자열 " "을 입력하지 않으면 오류 발생함

a = "0b1010"
print(int(a, 2))

b = "0o12"
print(int(b, 8))

c = "0xa"
print(int(c, 16))

 

int(문자열)
a = 0b1010
print(int(a))

b = 0o12
print(int(b))

c = 0xa
print(int(c))