检查项目是否已在列表中,如果不在列表中则将其添加到列表中的语法是:
foo = []
if item not in foo:
foo.append(item)
# do something
这可以在项目不在foo中的条件下执行代码。这个语法似乎复制了python中set数据类型的逻辑,但是下面的语法并不存在
bar = set()
if not bar.add(item):
# do something
但是add()不返回任何内容,所以这是不可能的。那么,如何有条件地对集合中的某个项执行某些逻辑呢?你知道吗
注:之所以需要一个集合,是因为向集合添加唯一值的操作是O(1),而在列表上相同的操作是O(n)。你知道吗
只需删除
if
。你知道吗请注意,使用
list
时有foo.append(item)
。当您使用set
时,唯一改变的是函数名。你知道吗相关问题 更多 >
编程相关推荐