【发布时间】:2020-10-29 06:26:58
【问题描述】:
我正在尝试遍历一个列表(称为 lista)以打印出一个新列表,其中每个部分正好有 5 个字符。
lista = ['123', '2', '34322', '332']
while True:
for i in lista:
if len(lista[lista.index(i)]) < 5:
lista[lista.index(i)] += '0'
else:
break
print(lista)
然而,我的输出是:
['1230', '20', '34322', '3320']
获得正确字符数的唯一方法是通过删除“break”语句来创建无限循环。
非常感谢任何帮助。
【问题讨论】:
-
我相信
i是您应该检查的长度,除了一些其他问题。 -
试试这个,
[x.rjust( 5, "0") for x in ['123', '2', '34322', '332']] -
请查看stackoverflow.com/help/someone-answers 了解如何接受答案并欢迎来到 SO。
标签: python list loops iteration infinite-loop