0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

python二八十六进制整数转换

jf_78858299 来源:梯阅线条 作者:小梯子 2023-03-10 09:59 次阅读

python的整数数字可以用二、八、十六不同进制表示,它们可以和十进制相互转换。python的数字可以进行位操作。

1.1 python二八十六进制整数

python整数默认用十进制表示,也可以用二进制、八进制、十六进制表示整数。

python二进制(binary)整数以0b或0B开头。

python八进制(Octal)整数以0o或0O开头。

python十六进制(Hex)整数以0x或0X开头。

1.1.1 不同进制内置函数

python不同进制整数的内置函数分为两类。

一类将十进制整数转换为不同进制。

一类将不同进制整数转换为十进制。

序号 内置函数 描述
1 bin() 将十进制整数转为二进制
2 oct() 将十进制整数转为八进制
3 hex() 将十进制整数转为十六进制
4 int(str,base) 将不同进制整数字符串转为十进制

示例

>>> bin(95),oct(95),hex(95)
('0b1011111', '0o137', '0x5f')
>>> int('95'),int('0b1011111',2),int('0o137',8),int('0x5f',16)
(95, 95, 95, 95)

1.1.2 eval()转十进制整数

python的eval()函数可以将字符串作为代码执行。速度慢,且存在安全问题。

可以通过eval()达到int()函数的效果,将不同进制整数字符串转为十进制。

示例

>>> eval('95'),eval('0b1011111'),eval('0o137'),eval('0x5f')
(95, 95, 95, 95)

1.1.3 %和format()转不同进制整数

python的字符串格式化表达式%和格式化方法format也可以将十进制整数转为不同进制。

示例

>>> '%o,%x' % (95,95)
'137,5f'
>>> '{0:b},{1:o},{2:x}'.format(95,95,95)
'1011111,137,5f'

1.2 python数字位操作

python数字把整数当做二进制进行位操作,比如左移、右移、或、与等。

python二进制位操作
序号 位操作 描述
1 x<>n 右移n位,表示缩小2的n次方方倍
3 x n
4 x&n 位与,全1位1,否则为0

注意 :相同整数进行与、或,结果不变,为原值。

示例

>>> x = 2
>>> x << 3
16
>>> y = 16
>>> y >> 3
2
>>> x | 2
2
>>> x | 1
3
>>> x & 2
2
>>> x & 1
0
>>> x = 2
>>> bin(x)
'0b10'
>>> bin(x << 3)
'0b10000'
>>> int('0b10000',2)
16
>>> bin(x)
'0b10'
>>> bin(1)
'0b1'
>>> bin(x|1)
'0b11'
>>> int('0b11',2)
3

更多内容参考python学习笔记或软件测试开发目录。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
收藏 人收藏

    评论

    相关推荐

    十六进制和八进制转换原理

    ,可以得到十六进制数的一般表达式:例:十六进制转换为十进制:  (4E6)H= 4×162+14×161+6×160     = 4×256+14×16+6×1=(1254)D例:二
    发表于 04-06 23:54

    LabVIEW中如何实现十六进制和ASCII之间的转换

    实现将这个十六进制表示转换为其对应的ASCII表示?如果需要以十六进制等价的形式向仪器发送命令,该如何实现?解答: 将十六进制转换为ASCI
    发表于 10-20 11:20

    labview教程:十六进制和ASCII之间的相互转换

    表示转换为其对应的ASCII表示实现通信。将十六进制转换为ASCII:. 为了将一个十六进制的字符串转化为ASCII字符串,您必须首先使用扫描值函数将
    发表于 01-05 11:21

    十六进制编辑器

    关键词TKStudio,HexEditor,十六进制,编辑器摘 要十六进制编辑器HexEditor是TKStudio附带的辅助工具,用来显示或编辑十六进制文件。
    发表于 11-10 13:31 47次下载

    ASCII码转换十六进制

    ASCII码转换十六进制数 入口条件:待转换的ASCII码(30H~39H或41H~46H)在A中。出口信息:转换后的十六进制数(00H
    发表于 01-19 22:48 1.4w次阅读

    单字节BCD码整数转换成单字节十六进制整数

    单字节BCD码整数转换成单字节十六进制整数 入口条件:待转换的单字节BCD码整数在累加器A中。
    发表于 01-19 22:49 2798次阅读

    双字节BCD码整数转换成双字节十六进制

    双字节BCD码整数转换成双字节十六进制整 入口条件:待转换的双字节BCD码整数在R2、R3中。出口信息:
    发表于 01-19 22:50 2976次阅读

    单字节BCD码小数转换成单字节十六进制小数

    单字节BCD码小数转换成单字节十六进制小数 入口条件:待转换的单字节BCD码数在累加器A中。出口信息:转换后的单字节十六进制
    发表于 01-19 22:50 1681次阅读

    双字节十六进制整数转换成双字节BCD码整数

    双字节十六进制整数转换成双字节BCD码整数 入口条件:待转换的双字节十六进制
    发表于 01-19 22:52 2878次阅读

    单字节十六进制整数转换成单字节BCD码整数

    单字节十六进制整数转换成单字节BCD码整数  入口条件:待转换的单字节十六进制
    发表于 01-19 22:53 3234次阅读

    进制数与十六进制数的相互转换

    进制数与十六进制数的相互转换进制数与十六进制数的相互转换,按照每4位二
    发表于 09-24 11:28 9747次阅读
    二<b class='flag-5'>进制</b>数与<b class='flag-5'>十六进制</b>数的相互<b class='flag-5'>转换</b>

    如何进行ASCII码和十六进制数的转换

    本文档的主要内容详细介绍的是如何使用51单片机进行ASCII码和十六进制数的转换资料免费下载题目:用查表法将一位十六进制转换为ASCII码,入口参数放在内部RAM 50H中,出口参数
    发表于 07-08 17:41 7次下载
    如何进行ASCII码和<b class='flag-5'>十六进制</b>数的<b class='flag-5'>转换</b>

    UltraEdit十六进制编辑器

    UltraEdit不仅仅是一个文本编辑器,它还包括十六进制编辑器模式,有时也称为二进制文件编辑器或字节编辑器。 关键的十六进制编辑功能 十六进制编辑器允许编辑任
    的头像 发表于 05-28 14:16 2711次阅读
    UltraEdit<b class='flag-5'>十六进制</b>编辑器

    单精度浮点数和十六进制相互转换例程(基于LV)

    十六进制字符转成普通字符十六进制字符转成浮点数浮点数转成十六进制字符应用于上位机和PLC通讯的数据转换
    发表于 08-07 15:12 28次下载

    为什么计算机需要十六进制?简单聊聊十六进制

    实际上,计算机本身是不需要十六进制的,计算机只需要二进制,需要十六进制的是人。
    的头像 发表于 02-25 11:47 1132次阅读