问题是这样的,有两个列表,例如这两个:
a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
b = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]
编写一个程序,返回一个仅包含两个列表共同元素(不包括重复元素)的列表。确保您的程序适用于大小不同的两个列表。
以下是我的代码:
a = [1, 1, 2, 2, 3, 5, 8, 13, 21, 34, 55, 89]
b = [1, 2, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]
c = []
for i in a:
if i in b and i not in c:
c.append([i])
print(c)
尽管使用了“i not in c”语句,但我的输出仍然会出现重复项。为什么会这样?我相信这显而易见,只是我看不到!
[i]
?当1 in c
在c
中查找并找到[1]
时,它不会认为它们是相同的。请移除方括号。 - Dimitris Fasarakis Hilliard