目录
进制的表示
进制的转换
bin() 十进制转二进制
oct() 十进制转八进制
hex() 十进制转十六进制
int(a,R) R进制数a(必须为字符串类型)转换成十进制
十进制小数转R进制
R进制小数转十进制
二进制:0b
八进制:0o
十六进制:0x
# 二进制标识符为0b 打印输出对应其带代表的十进制数
print(0b10) # 2
print(0b11) # 3
# 八进制标识符为0o 打印输出对应其带代表的十进制数
print(0o10) # 8
print(0o11) # 9
# 二进制标识符为0x 打印输出对应其带代表的十进制数
print(0x10) # 16
print(0x11) # 17
# 输入数字默认为十进制数
print(10) # 10
#十进制转换二进制
i = 16
j = bin(i)
print(j)
0b10000
0b:表示它是一个二进制数字,10000:十进制数16转换成二进制的值
#十进制转换八进制
i = 16
j = oct(i)
print(j)
0o20
0o:表示它是一个八进制数字,20:十进制数16转换成八进制的值
#十进制转换十六进制
i = 16
j = hex(i)
print(j)
0x10
0x:表示它是一个十六进制数字,10:十进制数16转换成十六进制的值
#二进制转换十进制
i = "10"
j = int(i, 2) #在其他进制转换成十进制时,i 的类型需要是字符串类型;
print(j)
2
#八进制转换十进制
i = "10"
j = int(i, 8) #在其他进制转换成十进制时,i 的类型需要是字符串类型;
print(j)
8
#十六进制转换十进制
i = "10"
j = int(i, 16) #在其他进制转换成十进制时,i 的类型需要是字符串类型;
print(j)
16
def dec2R(dec, R, n):
'''
:param dec: 需要转换的十进制小数
:param R: 转换进制
:param n: 保留小数位数
:return: 转换后的R进制小数
'''
result = ['0.']
for i in range(n):
dec = dec*R
dec_int = int(dec)
result.append(str(dec_int))
dec = dec - dec_int
if dec == 0:
break
return ''.join(result)
def R2dec(r_float_num, R):
'''
:param r_float_num: 需要转换的R进制小数
:param R: 转换进制
:return: 转换后的十进制小数
'''
result = 0
for index, ch in enumerate(str(r_float_num)[2:],start=1):
result = result + int(ch)*(R**(-index))
return result
参考自python进制转换函数_际遇98的博客-CSDN博客_python进制转换函数