进制之间的转换(Python)

在这里插入图片描述

print自动转

a = 0xa6 # 十六进制 开头那个是数字零
b = 0o37 # 八进制
c = 23   # 十进制
d = 0b10011 # 二进制

'''
用print顺序输出后,结果自动转为十进制数:
166
31
23
19
'''

十进制转其他

转二进制的函数:bin()。0b是二进制的前缀。
转八进制的函数:oct() 。0o是八进制的前缀。
转十六进制的函数:hex()。0x是十六进制的前缀。

a=bin(10) #10进制转为2进制
b=oct(10) #10进制转为8进制
c=hex(95) #10进制转为16进制

'''
顺序输出a,b,c:
0b1010
0o12
0x5f
'''

其他转十进制

a=int("1001",2)
b=int('57', 8)
c=int('ff', 16)

'''
顺序输出a,b,c:
9
47
255
'''

除了上述这样常见的,int还可以这么玩,前提是语句不出错
a=int(“324”,7)
b=int(‘26’, 12)
c=int(‘ff’, 16)
d=int(‘ff’, 20)
结果分别是:165;30;255;315

# 数值是对的,只不过类型是字符型
a = 0x5fac01
b = 0xe3
c = 0o73
d = 0b1001

print(str(a))
print(str(b))
print(str(c))
print(str(d))

其他进制之间的互转

#2进制到8进制
a1=oct(0b1011)
#2进制到16进制
a2=hex(0b10101111)

#8进制到2进制
b1=bin(0o257)
#8进制到16进制
b2=hex(0o23)

#16进制到2进制
c1=bin(0xaf)
#16进制到8进制
c2=oct(0xaf)

'''
顺序输出:
0o13
0xaf
0b10101111
0x13
0b10101111
0o257
'''
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值