我目前正在使用 Python 的格式规范迷你语言编写用空格填充字符串的代码:
print('''{user:<10}, you're welcome!'''.format(user='John Doe'))
输出是:
John Doe , you're welcome!
但是,如果用户的名字类似于'Jooooooooooooohn Doe',我想输出:
Jooooooooo, you're welcome!
有没有办法使用格式规范迷你语言执行截断和填充?
谢谢!
我目前正在使用 Python 的格式规范迷你语言编写用空格填充字符串的代码:
print('''{user:<10}, you're welcome!'''.format(user='John Doe'))
输出是:
John Doe , you're welcome!
但是,如果用户的名字类似于'Jooooooooooooohn Doe',我想输出:
Jooooooooo, you're welcome!
有没有办法使用格式规范迷你语言执行截断和填充?
谢谢!
从您链接到的页面:
对于非数字类型,[精度] 表示最大字段大小 - 换句话说,从字段内容中将使用多少个字符。整数值不允许精度。
精度是由一个时期引入的
format_spec ::= [[fill]align][sign][#][0][width][,][.precision][type]
所以正确的格式字符串是{user:<10.10}.
>>> '{0:<10.10}'.format('1234567')
'1234567 '
>>> '{0:<10.10}'.format('123456789034')
'1234567890'