gpt4 book ai didi

python - 我如何定义一个函数,如果列表中的所有项目都不同则返回 False,否则返回 True

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

我尝试创建一个函数来检查列表项的不同性,如果同一元素没有多次出现则返回 false。

def AllDifferent(s):
for i in s:
for i2 in s:
if i2 == i:
return False
else:
return True

但是好像不行。我做错了什么?

最佳答案

您可以使用 set 来完成。 set 是只保留任何对象的一个​​副本的集合。所以 set([1,1,1,1,1,1])set([1]) 相同。因此,让我们检查 set 是否与 list

的长度(大小)相同
def allDifferent(in_list):
return len(set(in_list)) == len(in_list)

请注意,Python 中的可变数据类型不可散列,也不能放入 set 中。对于他们,我们需要更详细的解决方案。

def allDifferent(in_list):
my_list = in_list[:]
while my_list:
x = my_list.pop()
if x in my_list:
return False
return True

关于python - 我如何定义一个函数,如果列表中的所有项目都不同则返回 False,否则返回 True,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40226967/

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