如果我的函数集结尾为空,我正在努力寻找一种更干净的返回布尔值的方法
我将两个集合相交,并希望返回True或False基于结果集是否为空。
def myfunc(a,b):
c = a.intersection(b)
#...return boolean here
我最初的想法是
return c is not None
但是,在我的解释器中,我可以很容易地看到,如果 c = set([])
>>> c = set([])
>>> c is not None
True
我还尝试了以下所有方法:
>>> c == None
False
>>> c == False
False
>>> c is None
False
现在,我已经从文档阅读,我只能用and,or和not空集来推断一个布尔值。到目前为止,我唯一能想到的就是不返回
>>> not not c
False
>>> not c
True
我感觉有一种更多的Python方式可以做到这一点,因为我一直在努力寻找它。我不想将实际集合返回到if语句,因为我不需要这些值,我只想知道它们是否相交。
bool(set([]))