[Python] 10진수 2진수, 8진수, 16진수로 변환하기

Choi Rim·2021년 8월 9일
0

Python

목록 보기
20/20
post-thumbnail

10진수 2진수, 8진수, 16진수로 변환하기

  • 파이썬은 기본 10진수이기 때문에 다른 진수는 접두어가 붙는다
    • 2진수 : 0b
    • 4진수 : 0o
    • 8진수 : 0x

첫번째 변환 방법 - bin(), oct(), hex()

>>> number = 12
>>> bin(number)
'0b1100'
>>> oct(number)
'0o14'
>>> hex(number)
'0xc'
  • 2진수 / bin(), 8진수 / oct(), 16진수 / hex()
  • 파이썬 내장함수를 이용하여 변환할 수 있다.
>>> type(bin(number))
<class 'str'>
  • 결과는 string 타입으로 나타난다.

두번째 변환 방법 - format 내장함수

>>> format(number,'#b')
'0b1100'
>>> format(number,'#o')
'0o14'
>>> format(number,'#x')
'0xc'
  • format(10진수, '#b') / 2진수
  • format(10진수, '#o') / 8진수
  • format(10진수, '#x') / 16진수
  • 위 format 내장함수를 이용하여 10진수를 변환할 수 있다.
>>> format(number,'b')
'1100'
>>> format(number,'o')
'14'
>>> format(number,'x')
'c'
  • 두번째 인자에서 #를 제거하면 접두어가 빠진 상태로 출력된다.
>>> '{0:#b}'.format(number)
'0b1100'
>>> '{0:#o}'.format(number)
'0o14'
>>> '{0:#x}'.format(number)
'0xc'
  • 위 방식으로도 가능하다
>>> '{0:b}'.format(number)
'1100'
>>> '{0:o}'.format(number)
'14'
>>> '{0:x}'.format(number)
'c'
  • 마찬가지로 #을 빼면 접두어가 빼진 상태로 출력된다.

<참고>

profile
https://rimi0108.github.io/

0개의 댓글