如何在 Python 中格式化具有可变位数的数字?
假设我想显示数字 123,并在前面添加可变数量的填充零。
例如,如果我想以 5 位数字显示它,我将有 digits = 5
给我:
00123
如果我想以 6 位数字显示它,我将有 digits = 6
给予:
000123
我将如何在Python中做到这一点?
Say I wanted to display the number 123 with a variable number of padded zeroes on the front.
For example, if I wanted to display it in 5 digits I would have digits = 5
giving me:
00123
If I wanted to display it in 6 digits I would have digits = 6
giving:
000123
How would I do this in Python?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
如果您在格式化字符串中使用
format()
方法,该方法优于旧样式''%
格式,请参阅
http://docs.python.org/library/stdtypes.html#str.format
http://docs.python.org/library/string.html#formatstrings
这是一个可变宽度的示例
您甚至可以将填充字符指定为变量
If you are using it in a formatted string with the
format()
method which is preferred over the older style''%
formattingSee
http://docs.python.org/library/stdtypes.html#str.format
http://docs.python.org/library/string.html#formatstrings
Here is an example with variable width
You can even specify the fill char as a variable
有一个名为 zfill 的字符串方法:
它将用零填充字符串的左侧,以使字符串长度为 N(在本例中为 10)。
There is a string method called zfill:
It will pad the left side of the string with zeros to make the string length N (10 in this case).
随着引入格式化字符串文字(“f-strings”简而言之)在 Python 3.6 中,现在可以使用更简短的语法访问先前定义的变量:
John La Rooy 给出的示例可以写为
With the introduction of formatted string literals ("f-strings" for short) in Python 3.6, it is now possible to access previously defined variables with a briefer syntax:
The examples given by John La Rooy can be written as
对于那些想要使用 python 3.6+ 和 f-Strings 做同样事情的人来说,这是解决方案。
For those who want to do the same thing with python 3.6+ and f-Strings this is the solution.
印刷
Prints
使用字符串格式
更多信息:链接文本
Use string formatting
More info here: link text