繁体   English   中英

用python设置固定长度

[英]Setting fixed length with python

我的str就像'60'或'100'。 我需要str为'00060'和'00100',

我怎样才能做到这一点? 代码是这样的:我使用'0'+'0'+'0'作为插件。 现在需要修复d == 0006000100

  a4 ='60'
  a5 ='100'

  d=('0'+'0'+'0'+a4+'0'+'0'+a5) 

由于您正在操作字符串, str.zfill()完全按照您的意愿执行。

>>> s1, s2 = '60', '100'
>>> print s1.zfill(5), s2.zfill(5)
00060 00100

像这样:

num = 60 
formatted_num = u'%05d' % num

有关将数字格式化为字符串的详细信息,请参阅文档

如果您的数字已经是一个字符串(如您更新的问题所示),您可以使用rjust字符串方法将其用零填充到正确的宽度:

num = u'60'
formatted_num = num.rjust(5, u'0')

如果“60”已经是一个字符串,则必须在应用格式之前将其转换为数字。 最实用的就像C的printf一样:

a  ="60"
b = "%05d" % int(a)

阅读您最喜爱的Python文档,赞赏:

http://docs.python.org/library/string.html#formatstrings

“””

如果width字段前面有一个零('0')字符,则启用零填充。 这相当于对齐类型'='和填充字符'0'。 “””

如果它已经是一个字符串,您可能想要使用.zfill()方法。

myval.fill(5)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM