【Python基础】Python十进制二进制八进制十六进制 ascii转换

进制转换(十进制 ⇆ 二进制 ⇆ 八进制 ⇆ 十六进制)

使用bin()oct()int()hex() 进行进制转换

>>> bin(1)  # 十进制 转 二进制
'0b1'
>>> oct(1)  # 十进制 转 八进制
'0o1'
>>> int(1)  
1
>>> hex(1)  # 十进制 转 十六进制
'0x1'

字符串.format() 进行进制转换,可以去除0b0o0x
formart()也可以在进制转换时,去除0b0o0x

# 格式化format转换 b o d x  
>>> "{:b}".format(10)  # 二进制   'b' 二进制格式。 输出以 2 为基数的数字
'1010'
>>> "{:o}".format(10)  #八进制    'o' 八进制格式。 输出以 8 为基数的数字。
'12'
>>> "{:d}".format(10)  # 十进制   'd' 十进制整数。 输出以 10 为基数的数字。
'10'
>>> "{:x}".format(10)  # 十六进制 'x' 十六进制格式。 输出以 16 为基数的数字,使用小写字母表示 9 以上的数码。
'a'
>>> "{:X}".format(10)  # 十六进制 字母大写 'X' 十六进制格式。 输出以 16 为基数的数字,使用大写字母表示 9 以上的数码。 在指定 '#' 的情况下,前缀 '0x' 也将被转为大写形式 '0X'。
'A'

>>> format(10, "b")  # 二进制   'b' 
'1010'
>>> format(10, "o")  #八进制    'o' 
'12'
>>> format(10, "d")  # 十进制   'd' 
'10'
>>> format(10, "x")  # 十六进制 'x' 
'a'
>>> format(10, "X")  # 十六进制 字母大写 'X'
'A'

.format()format()保留0b0o0x, 在格式化时加#

>>> "{:#b}".format(10)  # '0b1010'
>>> "{:#o}".format(10)  # '0o12'
>>> "{:#d}".format(10)  # '10'
>>> "{:#x}".format(10)  # '0xa'
>>> "{:#X}".format(10)  # '0XA'
>>>
>>> format(10, "#b")  # '0b1010'
>>> format(10, "#o")  # '0o12'
>>> format(10, "#d")  # '10'
>>> format(10, "#x")  # '0xa'
>>> format(10, "#X")  # '0XA'

# str ⇆  ASCII

```python
# ord() 单个字符转ASCII,可以进行相关的运算, 输入仅为单个字符
>>> ord("\n")
10
>>> ord('a')
97
>>> ord("汉")
27721

# chr() ASCII转对应的字符
>>> chr(10)
'\n'
>>> chr(97)
'a'
>>> chr(27721)
'汉'
>>> "{:c}".format(10)  # 'c' 字符。在打印之前将整数转换为相应的unicode字符。
'\n'
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值