Veg*_*ega 2 python contains list
我有一个清单:
["a", "b", "c", "d"]
Run Code Online (Sandbox Code Playgroud)
并列出 b1:
["a", "b", "x"]
Run Code Online (Sandbox Code Playgroud)
和b2:
["a", "z", "x"]
Run Code Online (Sandbox Code Playgroud)
如果 b1 至少有 2 个来自 a 的元素,则结果为 True。如果 b2 至少有 2 个来自 a 的元素,则结果为 True。
在此示例中,b1 == True 且 b2 == False。
我如何在 Python 中检查这一点?
该函数应该使用 set 和set junction来完成您想要的操作。
def f(a, b):
return len(set(a) & set(b)) >= 2
Run Code Online (Sandbox Code Playgroud)
用法:
>>> f(a, b1)
True
>>> f(a, b2)
False
Run Code Online (Sandbox Code Playgroud)
或者,如果b有重复的元素,您可以使用:
def f2(a, b):
return sum(x in a for x in b) >= 2
Run Code Online (Sandbox Code Playgroud)
测试:
>>> f(a, ['a', 'a', 'x'])
False
>>> f2(a, ['a', 'a', 'x'])
True
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1273 次 |
| 最近记录: |