我不知道如何以最python的方式编写逻辑。
我有两种数据类型:
d: Dict[str, Any] = {} l: List[str]: []
现在我想写一个条件,检查是否至少有一个字符串在字典中(作为键)或在列表中。我不知道如何用最python的方式做到这一点。
我显然可以这样写:
if 'str_1' in d.keys() or 'str_2' id d.keys():
return True
elif 'str_1' in l or 'str_2' id l:
return True
我正在努力想出一种以python的方式优雅地编写它的方法,最好是在一行中。
可能是这样的:
any(item in coll_ for coll_ in (l, d) for item in (‘str_1’,’str_2’))
使用这样的三元表达式:
l=["a","c"]
d={'b':'yes'}
key = 'b'
result = True if key in d or key in l else False
以上等价于:
result = key in d or key in l
在三元表达式中,不是强制返回布尔值。