갬미의 성장일기

[Python] 진수 변환하기 본문

Algorithm/Python 문법

[Python] 진수 변환하기

갬미 2022. 1. 15. 16:26

python에서 10진수를 2진수로 변환하는 방법으로는 

  • 2진수로 변환하는 함수 사용하기
  • while문으로 구현하기

1. bin함수 사용하기

# bin(number)
>>> bin(42)
'0b101010'

ob라는 문자열이 앞에 붙어서 출력되므로 이를 제거하고 싶다면 문자열 슬라이싱을 이용하면 된다

# bin(number)
>>> bin(42)[2:]
'101010'

2진수 변환하기 - bin()

8진수 변환하기 - oct()

16진수 변환하기 - hex()

 

다른진수의 수를 10진수로 변환하기 

2진수 앞에는 0b

8진수 앞에는 0o

16진수 앞에는 0x를 붙여 int에 입력한다

>>> int('0b101010', 2)
42
>>> int('0o52', 8)
42
>>> int('0x2a', 16)
42

 

2. while문으로 구현하기

n = 42
y = ''
while n > 0 :
    y+=str(n%2)
    n = n//2
y[::-1]

2진수 계산 방법을 그대로 구현하면 된다. 이때 거꾸로 출력되므로 뒤집어서 사용한다

 

 

참고 사이트

 

[파이썬] 2진수, 8진수, 16진수 다루기

Engineering Blog by Dale Seo

www.daleseo.com

 

Comments