众所周知,列表理解 [i for i in [1, 2, 3, 4]] 并且有字典理解,例如 {i:j for i, j in {1: 'a', 2: 'b'}.items()} 但 (i for i in (1, 2, 3)) 最终将成为生成器,而不是tuple理解力。这是为什么? 我的猜测是a tuple是不可变的,但这似乎并不是答案。
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}