在 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 理解中表达式的位置必须有两个表达式,用冒号分隔:
{ (some_key if condition else default_key):(something_if_true if condition
else something_if_false) for key, value in dict_.items() }
最后的if
子句起到过滤器的作用,与有条件表达式不同。
关于python - 如何在字典理解中使用 if/else?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9442724/