我最近开始学习Python编程,并编写了一个简单的函数,该函数接受两个列表并返回一个新的列表,使两个列表重聚。但是,当我运行代码时,它返回一个空列表。请帮助:
x = [1, 2, 3]
y = [4, 5, 6]
def reunion(list_of_numbers1,list_of_numbers2):
union_list = list()
for i in range(0,len(list_of_numbers1)):
if list_of_numbers1[i] in list_of_numbers2 is True:
union_list.append(i)
del list_of_numbers1[i]
del list_of_numbers2[i]
return union_list
z = reunion(x,y)
print(z)
在您的示例中,它应该返回一个空列表,因为没有公共数字。你知道吗
你想做:
这可能会添加重复项。为了避免这些
但是,我会这样做
这样的事情会给你一个好的开始:
输出:
或者更接近你的代码:
我可以看到你的代码有两个主要问题:
i
迭代第一个列表元素的索引,因此在第二个列表中查找的是这些索引,而不是元素本身。在Python中,删除正在迭代的列表元素是有问题的:Python: Removing list element while iterating over list。
相关问题 更多 >
编程相关推荐