Python世界中常用的数字类型有整型、浮点型。
1 整型
1.1 整型中的进制
0b : 二进制
0o : 八进制
0x : 十六进制
这三种进制的直接声明是在数字前面加上相应的进制标志,如八进制0o654、二进制0b101101、十六进制0xa9cc8
print(0xa9cc8) #695496
1 #打印8进制数字是print是将其换算成十进制的数字显示 2 print(0o654) 3 #428
那么问题来了,如果我有一个十进制的数字,想转换成上述三种进制,如何操作呢?
Python内置了3个函数:
bin():将作为参数的十进制转换为二进制函数
oct():将作为参数的十进制转换为八进制函数
hex():将作为参数的十进制转换为十六进制函数
下边通过具体例子演示一下进制的转换:
1 >>> #将十进制88转换为二进制 2 >>> bin(88) 3 ‘0b1011000‘ 4 >>> #将十进制88转换为八进制 5 >>> oct(88) 6 ‘0o130‘ 7 >>> #将十进制88转换为十六进制 8 >>> hex(88) 9 ‘0x58‘
问题又来了,如果我想将一个十进制数字88转换为七进制呢,该如何操作呢?
1 #自己设计一个函数来实现将一个十进制数字转换成其他进制的数字 2 #需要两个参数a,b a:十进制数字,b:目标进制 3 #要求:a >= b 4 #该函数目前只考虑整数部分的转换 5 #输出格式 : (进制数)转换结果 6 def change_num(a,b): 7 l=[] 8 d=‘‘ 9 while a >= b: 10 c = a % b 11 l.append(c) 12 a = a // b 13 14 l.append(a) 15 l.reverse() 16 for i in l: 17 d += str(i) 18 19 return ‘(‘+str(b) +‘)‘ +d
这部分的整理未完待续...