如何使用截断字符串str.format https://docs.python.org/3/library/stdtypes.html#str.format在Python中?有可能吗?
有一个width
中提到的参数格式规范迷你语言 https://docs.python.org/3/library/string.html#format-specification-mini-language:
format_spec ::= [[fill]align][sign][#][0][width][,][.precision][type]
...
width ::= integer
...
但指定它显然只适用于填充,而不适用于截断:
>>> '{:5}'.format('aaa')
'aaa '
>>> '{:5}'.format('aaabbbccc')
'aaabbbccc'
所以它更像是最小宽度而不是实际宽度。
我知道我可以对字符串进行切片,但是我在这里处理的数据是完全动态的,包括格式字符串和进入的参数。我不能直接显式地对一个进行切片。
Use .precision
反而:
>>> '{:5.5}'.format('aaabbbccc')
'aaabb'
根据文档格式规范迷你语言 https://docs.python.org/3/library/string.html#format-specification-mini-language:
The 精确是一个十进制数,指示格式化的浮点值的小数点后应显示多少位数字'f'
and 'F'
,或格式为浮点值的小数点之前和之后'g'
or 'G'
. 对于非数字类型,该字段指示最大字段大小 - 换句话说,将使用字段内容中的多少个字符。 The 精确不允许使用整数值。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)