I have str that are like '60' or '100'. I need the str to be '00060' and '00100',
How can i do this? code is something like this: I was using '0'+'0'+'0' as plug. now need to fix d==0006000100
a4 ='60'
a5 ='100'
d=('0'+'0'+'0'+a4+'0'+'0'+a5)
Since you are manipulating strings, str.zfill() does exactly what you want.
>>> s1, s2 = '60', '100'
>>> print s1.zfill(5), s2.zfill(5)
00060 00100
Like this:
num = 60
formatted_num = u'%05d' % num
See the docs for more information about formatting numbers as strings.
If your number is already a string (as your updated question indicates), you can pad it with zeros to the right width using the rjust string method:
num = u'60'
formatted_num = num.rjust(5, u'0')
zfill) is the way to go in your case since it's built for exactly the type of thing you're doing"".format() instead for future compatibility: u"{0:0>5d}".format(60) or u"{0:0>5s}".format(str(60))."{0!s:0>5s}".format(60)Reading your favorite Python documentation appreciated:
http://docs.python.org/library/string.html#formatstrings
"""
If the width field is preceded by a zero ('0') character, this enables zero-padding. This is equivalent to an alignment type of '=' and a fill character of '0'. """