2014-10-19 15 views
12

Sıfırlarla birlikte int tabanlı bir dize oluşturmak istiyorum. Ve uzunluk her zaman 5 olmalıdır, o kadar fazla ve daha az değil.Python formatı Sabit uzunluklu dizelere tamsayı

For example: 

Consider a Integer: 1 
Formatted String : 00001 

Consider a Integer: 12 
Formatted String : 00012 

Consider a Integer: 110 
Formatted String : 00110 

Consider a Integer: 1111 
Formatted String : 01111 

Consider a Integer: 11111 
Formatted String : 11111 

cevap

15

sıfır dolgulu tamsayılar biçimlendirmek için format() function veya str.format() yöntem kullanınız:

print format(integervalue, '05d') 
print 'Formatted String : {0:05d}'.format(integervalue) 

Format Specification Mini-Language bakınız; formattaki öndeki 0, 0-padding'i belirtir, 5, minimum alan genişliğidir; bundan daha kısa herhangi bir sayı tam genişliğe kadar doldurulur.

Demo: saniyede {1} yastıklı beklemek: id düzeltmek: {5d 0:} `print "pozisyonunu:

>>> format(110, '05d') 
'00110' 
>>> 'Formatted String : {0:05d}'.format(12) 
'Formatted String : 00012' 
+0

sayesinde .... ben bu yararlı çok buldum o –

+0

var { 2: 03d} ". Format (12, 453585, 89)" ' Yani, –

+0

@RodrigoLaguna ile (0 konumunda) doldurmayı engelleyebilirsiniz, elbette, ama özellikle sıfırlar ile doldurma sorusu sorulan soru :-) –

İlgili konular