内置函数(十进制—>二/八/十六进制)
注:直接利用函数输出的是字符串结果
1.bin() 二进制
dec=13
bin_str=bin(dec)
print(bin_str) #输出"0b1101"
print(int(bin_str[2:])) #输出1101
2.oct() 八进制
dec=13
oct_str = oct(dec)
print(oct_str) #输出"0o15"
print(int(oct_str[2:])) #输出15
3.hex() 十六进制
dec=13
hex_str=hex(dec)
print(hex_str) #输出"0xd"
手搓代码(十进制—>任意进制(<=36))
#base是要转换过去的进制
#n是要转换的数字
def to_base(n, base):
if n == 0:
return "0"
digits = "0123456789ABCDEF" #这里可以继续往后写,最多能到36进制
result = ""
while n > 0:
result = digits[n % base] + result
n = n // base
return result
用法示例:
dec = 26
bin_str = to_base(dec, 2)
print(bin_str) #输出"11010"
内置函数(其他进制—>十进制)
1.int()
(1)语法:
int(string,base)
其中,string是待转换的数字(字符串表示),base是源数字的进制
(2)用法示例:
bin_str = "1101"
dec = int(bin_str, 2)
print(dec) #输出13
输出结果是整型类型
新人刚开始写博文,欢迎各位大佬指点,提供补充和改进!