-
[Python] 진수 변환하기 (숫자 <-> 문자열) bin(), oct(), hex(), foramt()알고리즘/프로그래머스 2022. 11. 4. 14:44728x90반응형
1. 다른 진수 숫자로 표현하기
파이썬에서 숫자는 기본적으로 10진수로 표현되기 때문에 다른 진수를 표현하려면 앞에 접두어를 붙여야 한다.
// 2진수 : 0b >>> 42 == 0b101010 True // 8진수 : 0o >>> 42 == 0o52 True // 16진수 : 0x >>> 42 == 0x2a True
2. 진수 변환하기 (숫자 -> 문자열)
파이썬의 기본 내장함수 bin(), oct(), hex() 를 이용한다.
// 2진수를 문자열로 변환 >>> bin(42) '0b101010' // 8진수를 문자열로 변환 >>> oct(42) '0o52' // 16진수를 문자열로 변환 >>> hex(42) '0x2a'
인자는 10진수이든 2진수이든 상관없이 문자열로 변환해준다.
>>> bin(0b101010) '0b101010' >>> oct(0b101010) '0o52' >>> hex(0b101010) '0x2a' >>> str(0b101010) '42'
접두어를 제외하고 문자열로 변환하기 _ format() 내장함수
>>> format(42, 'b') '101010' >>> format(42, 'o') '52' >>> format(42, 'x') '2a' >>> format(42, 'X') '2A' >>> format(42, 'd') '42'
3. 다른 진수형을 10진수로 변환하기 (문자열 -> 숫자)
>>> int('0b101010', 2) 42 >>> int('0o52', 8) 42 >>> int('0x2a', 16)
디폴트 값은 10진수로 변환하는 것이기 때문에 10은 생략해도 10진수로 변환이 가능하다.
>>> int('42', 10) 42 >>> int('42') 42
LIST'알고리즘 > 프로그래머스' 카테고리의 다른 글
[Programmers] 삼총사 _Python (2) 2022.12.01 [Programmers] 귤 고르기 _Python (1) 2022.11.26 [Programmers] 햄버거 만들기 _Python (1) 2022.11.24 [Programmers] 푸드 파이트 대회 _Python (0) 2022.11.24 [Programmers] 숫자 카드 나누기 _Python (0) 2022.11.23