list_a = ["A", "B", "C"]
list_b = ["1", "2", "3", "4"]
len_a = len(list_a)
len_b = len(list_b)
i = 0
while True:
if i < len_a:
print(list_a[i], end="")
if i < len_b:
print("\t", list_b[i], end="")
print()
i += 1
if i > max(len_a, len_a):
break
def get(lst, idx):
try:
return lst[idx]
except:
return " "
a_list = ['a','b','c','d','e']
b_list = ['f','g','h','i','j','k','l','m','n']
result = []
for i in range(min(len(a_list), len(b_list))):
result.append(get(a_list, i))
result.append(get(b_list, i))
for i in range(min(len(a_list), len(b_list)), max(len(a_list), len(b_list))):
result.append(get(a_list, i))
result.append(get(b_list, i))
print('\n'.join('\t'.join((result[i], result[i+1]))
for i in range(0, len(result), 2)))
您的代码正在生成
IndexError
,因为b_list
的长度大于a_list
的长度,为此,您可以使用try except
语句:输出:
没有任何额外的循环:
这是一个可能的解决办法。不管
a_list
比b_list
长还是短这将打印预期输出:
相关问题 更多 >
编程相关推荐