我是Python新手,所以可能会问些天真的问题。我有一个列表
l1 = [2, 4, 6, 7, 8]
还有一个元组列表
l2 = [(4,6), (6,8), (8,10)]
我想输出一个大小为l1
的列表l3
,将l1
的值与l2
的第一坐标进行比较,如果在l1
中找到了第一坐标,则将第二坐标存储在l3
中,否则存储0。
输出:
l3 = [0, 6, 8, 0, 10]
我尝试使用 for 循环,例如:
l3 = []
for i in range(len(l1)):
if l1[i] == l2[i][0]:
l3.append(l2[i][1])
else:
l3.append(0)
但是这样不起作用。 它会报错
IndexError: list index out of range
显然,这是因为l2
比l1
短。
l2
中是否会出现多个元组具有相同的第一个元素的情况?如果是,那么规则是什么? - jedwardsl2
应该是一个字典而不是一个列表。 - Patrick Haugh