2진수 | 8진수 | 16진수 |
---|---|---|
bin() | oct() | hex() |
>>> print(bin(11))
0b1011
>>> print(oct(11))
0o13
>>> print(hex(11))
0xb
bin(11)[2:]
, oct(11)[2:]
, hex(11)[2:]
와 같이 작성하면 1011
, 13
, b
와 같이 출력된다.➡ 직접 코드 작성하여 10진수에서 n진수 변환 해야한다.
# x는 나누고자 하는 수
# n는 진수 변환 하고자 하는 수
def solution(x, n):
answer = ''
while x > 0:
x, mod = divmod(x, n)
answer += str(mod)
return answer[::-1]
print(solution(11,3))
int(value, n)
라이브러리 이용value
는 문자열 형태로 진수 변환해야 되는 수를 넣어주고, n
은 n진수에서 10진수로 변환할 수를 넣어준다.>>> int('101', 2)
5
>>> int('202', 3)
20
>>> int('303', 4)
51
>>> int('404', 5)
104
>>> solution(int('202', 3), 4)
110
rjust()
이용)rjust(길이, 채울문자)
를 이용하여 구현할 수 있다.>>> bin(1)[2:]
1
>>> bin(1)[2:].rjust(5, '0')
00001