小编典典

如何在字典理解中使用 if/else?

all

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}

阅读 92

收藏
2022-06-28

共1个答案

小编典典

你已经知道了:A if test else B是一个有效的 Python 表达式。如图所示,您的 dict 理解的唯一问题是 dict
理解中表达式的位置必须有两个表达式,用冒号分隔:

{ (some_key if condition else default_key):(something_if_true if condition
          else something_if_false) for key, value in dict_.items() }

finalif子句充当过滤器,与具有条件表达式不同。

2022-06-28