如果列表不共享元素,则尝试返回 True,否则返回 False。最小代码

For*_*ing 1 python

希望得到一些帮助。如果他们不共享任何元素,则尝试返回 True,否则返回 False,同时致力于改进我的“极简主义”编码(我可以在多行中完成此操作,但希望在一两行中完成此操作)。

我能够在单次测试中获得 True,而在以不同方式编写时无法在多次测试中获得 False。这是我目前所拥有的:

def different(listx, listy):

    return any(listx) == any(listy)
Run Code Online (Sandbox Code Playgroud)

建议?

谢谢你。

jos*_*nda 5

可能最简单的方法是将每个列表强制转换为set. 从文档中,一组被定义为:

集合对象是不同的可散列对象的无序集合。

从那里使用该isdisjoint方法检查这些集合是否不相交。

return set(listx).isdisjoint(set(listy))
Run Code Online (Sandbox Code Playgroud)