我是这里的初学者,真的需要一些帮助。
我必须确定二维列表中的所有元素是否都是唯一的。例如,如果给定一个二维列表 my_list = [[1,2,2],[4,5,2],[7,2,9]]
,我必须写一个代码会说,“这个列表没有所有唯一元素”,因为有多个 2。我必须使用嵌套循环编写代码。
这是我目前所拥有的:
my_list = [[1,2,2],[4,5,2],[7,2,9]]
for row in my_list:
for num in row:
if row.count(num) > 1:
print("Duplicate")
else:
print("No duplicate", num)
此代码可以检测到 my_list 的第一个列表中的重复 2,但不能检测到第二个列表。
最佳答案
要在不首先展平列表列表的情况下执行此操作,您可以使用一个集合来跟踪已“看到”的项目,这样您就可以确定迭代中的当前项目是否存在重复项已经在集合中:
seen = set()
for sublist in my_list:
for item in sublist:
if item in seen:
print('Duplicate')
break
seen.add(item)
else:
continue
break
else:
print('No duplicate')
关于python - 如何确定嵌套列表中的所有元素是否唯一?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60936204/