gpt4 book ai didi

python - 尝试连接 2 个列表中的字符串时,在 for 循环中列出超出范围的索引

转载 作者:太空宇宙 更新时间:2023-11-03 13:55:05 25 4
gpt4 key购买 nike

我正在尝试创建一个程序,用户可以在其中输入 2 个字符串列表。说大小相同的 l1 和 l2,说'n'。现在输出必须作为 l1 的第一个元素和 l2 的最后一个元素的串联列表给出,依此类推。即 l1 的第 i 个元素和 l2 的第 (n-1) 个元素。

第三个 for 循环出现错误“索引超出范围”

n=int(input())

l1=[]

for x in range(n):

e1=input()

l1.append(e1)

l2=[]

for x in range(n):

e2=input()
l2.append(e2)

for x in range(n):

k=l1[x]+l2[n-x]

print(k)

结果:

>>> Index out of range

最佳答案

替换这个:

for x in range(n):
k=l1[x]+l2[n-x]

用这个:

k = [a+b for a,b in zip(l1, reversed(l2))]

基本上你必须不惜一切代价避免索引。糟糕的命名习惯:l1 看起来很像 I1ll。您的所有代码都可以简化为:

n = int(input())

part1 = [input() for i in range(n)]
part2 = [input() for i in range(n)]

k = [a+b for a,b in zip(part1, reversed(part2))]

等等……


回答你的问题:

>>> part1 = ['app', 'ban']
>>> part2 = ['ana', 'le']
>>> print ' '.join( a+b for a,b in zip(part1, reversed(part2)))
apple banana

我觉得不错。

关于python - 尝试连接 2 个列表中的字符串时,在 for 循环中列出超出范围的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57423943/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com