Python 2.7+ 中是否存在一种方法来制作类似以下内容?
{ something_if_true if condition else something_if_false for key, value in dict_.items() }
我知道你可以用’if’做任何事情:
{ something_if_true for key, value in dict_.items() if condition}
你已经知道了:A if test else B是一个有效的 Python 表达式。如图所示,您的 dict 理解的唯一问题是 dict 理解中表达式的位置必须有两个表达式,用冒号分隔:
A if test else B
{ (some_key if condition else default_key):(something_if_true if condition else something_if_false) for key, value in dict_.items() }
finalif子句充当过滤器,与具有条件表达式不同。
if