【Python秘籍】十进制整数与二进制数的转换
最近在用Python写遗传算法时,发现需要将十进制的整数转换成二进制数,那么怎么来转换呢?当然如果你学过进制转换的有关计算方法,你可以手动编写一些函数来实现,不过总体来说还是比较麻烦的,这里介绍Python内置的两个函数bin()和int(),利用这两个函数可以轻轻松松完成转换。
一、十进制整数转换成二进制数
代码如下:
num = 8 numb = bin(num) print(numb)
这段代码的输出结果如下:
0b1000
0b是什么呢?有过一定计算机专业基础的人一定知道,其实他只是表示二进制数的前缀,也就是说加个0b在前面表示这个数不是一千,而是二进制的一零零零.
二、二进制数转换成十进制整数
代码如下:
numb = 0b1101 num = int(numb) print(num)
这段代码输出的结果如下:
13
也就是说我们通过一个简单的int函数将0b1101转换成了十进制的13。这里要强调的是,我们在写二进制数的时候,一定要加上0b这个前缀,否则它会把你转换成的数当成十进制数,也就是输出结果还是1101.
三、小贴士
还有一点需要大家注意的是,通过bin函数转换成的二进制数的类型是一个字符类型,可以通过下标遍历每个字符,但不能当做整型的数字来处理,所以大家在实际应用中,可能还需要将后几位取出来进行int类型的强制转换。而int转换成的十进制数的类型就是int型的,因为int函数本身也可以当做一个强制类型转换的函数。
相关推荐
jiangtie 2020-08-15
kerson 2020-05-11
emmm00 2020-11-17
yishouwangnian 2020-08-18
温攀峰 2020-08-17
stulen 2020-08-15
herohope 2020-07-19
FORYAOSHUYUN 2020-07-08
xiaojiang0 2020-06-21
Erick 2020-06-17
hickwu 2020-06-16
小秋 2020-06-15
spinachcqb 2020-06-13
TMD咯MySQL 2020-06-11
88427810 2020-06-10
pengpengflyjhp 2020-06-08
hevenue 2020-06-08