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