python3各进制转换

简介:
python整数(int类型)也能用2、8、16进制表示,作为一般的以10为基数的补充:
这里写图片描述
这些都是整形常量,注意不是字符串哦。
而下面有一些函数用于10进制和其他进制相互转换,如下:
(1)10-2、8、16:bin(3)==’0b11’,oct(10)==’0o12’, hex(17)==’0x11’,注意这三个函数的参数需要的是10进制整数,结果是2、8、16进制对应的字符串形式
(2)2、8、16-10:int(’ 0b11’,2) ==3,int(‘0o12’,8)==10,int(‘0x11’,16)==17
0b11、0o12、0x11不能直接转化为10进制整数,int函数第一个参数要穿各进制的字符串格式,返回的结果是10进制整数int,且第一个参数要和第二个参数对应起来,不然就会报错如int(‘0x11’,2)
(3)二进制、八进制、十六进制:分别是数字0加上字母b、o、x,大小写均可。

(4)eval函数可以执行字符串:
eval(’ 0b11’) ==3,eval(‘0o12’)==10,eval(‘0x11’)==17

1.进制转换
进制转换一般来说就是2、8、10、16进制的转换,思路是首先要学会,10进制和其他进制的相互转换,10-》2;10-8;10-16及2-》10;8-》10;16-》10
在python中10-》2;10-8;10-16分别用内置函数bin();oct();hex()实现,后面
2-》10;8-》10;16-》10用int()函数配合相应的参数来实现;
1)十进制–》其他进制
bin(number)–>’0b…’
oct(number)–>’0o…’
hex(number)–>’0x…’
这里的参数只能是整数,是int型,而后面转换成的其他进制数是字符串类型的,前面是’0’标志(是数字0):bin(25)=’0b11001’;oct(25)=’0o31’; hex(25)=’0x19’
注意:整型–》字符型

2)其他进制–》十进制
int(‘0b…’,2)–>10进制数据
int(‘0o…’,8)–>10进制数据
int(‘0x…’,16)–>10进制数据
第一个参数的标志0b、0o、0x要与第二个参数对应起来
注意:字符型–》整型

3)非10进制类型之间转换(已10进制为中间桥梁,但是要注意数据类型)
8进制=>16进制《=====》8进制=》10进制=》16进制
hex(int(‘0o162’,8))
16进制=>2进制《=====》16进制=》10进制=》2进制
bin(int(‘0xf92’,16))

4)bin()、oct()具体实现代码
这里写图片描述

  • 5
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值