Python 中十进制、二进制、八进制和十六进制数值之间的转换

数值的进制转换在编程中有时候会用到,作为高级语言的 Python 自带这个功能,不需要自己去写函数来实现。

接下来我们以十进制数 123456789 为例,实现数值进制之间的转换。

一、十进制转换为其它进制

1. 十进制转二进制

使用 bin() 函数,返回二进制字符串。

>>> decimal = 123456789
>>> binary = bin(decimal)
>>> binary
'0b111010110111100110100010101'

2. 十进制转八进制

使用 oct() 函数,返回八进制字符串。

>>> decimal = 123456789
>>> octal = oct(decimal)
>>> octal
'0o726746425'

3. 十进制转二进制

使用 hex() 函数,返回十六进制字符串。

>>> decimal = 123456789
>>> hexadecimal = hex(decimal)
>>> hexadecimal
'0x75bcd15'

二、其它进制转换为十进制

使用 int(x, base) 函数即可,x表示待转换变量,类型为字符串,base表示x的计数进制。结果返回十进制数值。

1. 二进制转十进制

>>> binary = '0b111010110111100110100010101'
>>> int(binary,2)
123456789

2. 八进制转十进制

>>> octal = '0o726746425'
>>> int(octal,8)
123456789

3. 十六进制转十进制

>>> hexadecimal = '0x75bcd15'
>>> int(hexadecimal,16)
123456789

是不是很有意思?十进制数 123456789 经历各种进制转换,从数值变为字符串,再从字符串变为数值,回到 123456789。这就像人生,最初源自尘土,不管经历什么,贫穷也好,富贵也罢,最终归于尘土。

 

 

 

 

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值