Skip to main content
 首页 » 编程设计

python之如何从集合中删除值为 None 的变量

2025年05月04日24sharpest

我需要创建一个包含位置的集合。然而,一些位置可以有值 None (当它们不属于游戏板时)。我怎样才能从我的集合中删除这些。或者我如何事先确定我不需要将它们添加到集合中? (添加的所有元素都是从我的代码中的不同函数获得的位置)。到目前为止我的代码(删除语句不起作用:Keyerror None。

collection = set() 
collection.add((above,below,left,right,top_left,top_right,bottom_left,bottom_right)) 
if above == None: 
    collection.remove(above) 
    return collection 

提前致谢!

请您参考如下方法:

set.add 将单个元素添加到集合中。在您的情况下,您添加了一个包含所有值的 tuple 到集合中。 元组 中的一项是否为None 并不重要。您应该改用 set.update。然后有几种方法可以删除它。

collection = set() 
collection.update((above,below,left,right,top_left,top_right,bottom_left,bottom_right)) 
collection.discard(None)