Python格式化数值

示例

该方法可以解释不同格式的数字,例如:.format()

>>> '{:c}'.format(65)    # Unicode字符
'A'

>>> '{:d}'.format(0x0a)  # 以10为基数
'10'

>>> '{:n}'.format(0x0a)  # 以10为基数 using current locale for separators
'10'

将整数格式化为不同的基数(十六进制,八进制,二进制)

>>> '{0:x}'.format(10) # 以16为底的小写字母-十六进制
'a'

>>> '{0:X}'.format(10) # 以16为底的大写字母-十六进制
'A'

>>> '{:o}'.format(10) # 基本8-八进制
'12'

>>> '{:b}'.format(10) # 基本2-二进制
'1010'

>>> '{0:#b}, {0:#o}, {0:#x}'.format(42) # 带前缀
'0b101010, 0o52, 0x2a'

>>> '8 bit: {0:08b}; Three bytes: {0:06x}'.format(42) # 添加零填充
'8 bit: 00101010; Three bytes: 00002a'

使用格式将RGB浮动元组转换为彩色十六进制字符串:

>>> r, g, b = (1.0, 0.4, 0.0)
>>> '#{:02X} {:02X} {:02X}'。format(int(255 * r),int(255 * g),int(255 * b))
'#FF6600'

只能转换整数:

>>> '{:x}'.format(42.0)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: Unknown format code 'x' for object of type 'float'