python 使用format,实用的进制转换和输出 您所在的位置:网站首页 字符转换为16进制输出 python 使用format,实用的进制转换和输出

python 使用format,实用的进制转换和输出

2024-05-24 07:11| 来源: 网络整理| 查看: 265

(本文的写作出发点是因为在刷题过程中经常用到,然而每次都要上网查,所以在此简单整理一下。)

要进行进制转换输出,必须传入的是十进制数字,而不是字符串!!,其他进制的字符串通过int函数转为十进制数字使用

1 二进制输出

要求:(1)二进制输出(2)按照8位的格式输出(3)位数不足左边补0

'{:08b}'.format(int())

a.'{:08b}'冒号之后为格式化的关键字

b.'{:08b}' 冒号之后的第一位'0' 表示用来补位的字符

c.'{:08b}'冒号之后的第二位'8'表示输出字符宽度为8位

d.'{:08b}'冒号之后的第三位'b'表示二进制格式输出

示例:

>>> '{:08b}'.format(int('a3', 16)) '10100011'

这里'{}'中':'冒号之后的格式检测的规则是从后往前检测的,比如'{:8b}'.format(int()),并不是用符号'8'补位,而是先检测到“b”确定二进制输出,再检测到输出字符宽度为8。

>>> '{:8b}'.format(int('a', 16)) ' 1010'

这里的记忆点就是,格式化输出设置从后往前读,先确定数据类型,再考虑输出长度,最后考虑用什么补位,这个过程也是符合直觉逻辑的。

2 八进制输出

'{:04o}'.format(int())

示例:

>>> '{:04o}'.format(int('a3', 16)) '0243'

3 十六进制输出

'{:02x}'.format(int())

示例:

>>> '{:02x}'.format(int('a3', 16)) 'a3'4 十进制输出

'{:d}'.format(int())

示例:

>>> '{:d}'.format(int('a3', 16)) '163'5 带进制前缀输出

输出若要带进制前缀,在冒号后第一位加"#",例如,'{:#08b}'.format(int())

>>> '{:#08b}'.format(int('a', 16)) '0b001010'

但是,输出的位数还是8位,这里的进制前缀也算作了长度,要把进制前缀考虑进去的化应该再加两位输出,如下:

>>> '{:#010b}'.format(int('a', 16)) '0b00001010'



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有