例如我有以下列表:
final=['feed', 'thed', 'og']
我将其迭代为:
count=0
number_of_character_to_print = 8
for i in range(len(final)):
for j in final:
if count>=number_of_character_to_print:
break
else:
print(j[i],end="")
count=count+1
print()
输出为:
fto
ehg
eeIndexError: string index out of range
和索引不足错误,因此有办法跳过列表中的空索引,而是跳过下一个列吗?
答案 0 :(得分:0)
只需在打印字符之前添加其他条件
if k>=len(s) or :
break
else:
if i < len(j):
print(j[i],end="")
else:
#Do something or just print a space or ignore this else
k=k+1
如果这不能解决问题,我们将需要更好的示例(解释变量c,k,s是什么,并显示完整输出示例)
答案 1 :(得分:0)
您可以先检查索引:
if len(j) > i:
print(j[i],end="")
k=k+1
或捕获索引错误:
try:
print(j[i],end="")
k=k+1
except IndexError:
pass
我不确定k的用途是什么,所以我不知道k是属于try / if块还是位于它们之外。