我有以下python代码:
print {a:b for a in [1, 2] for b in [3, 4, 5]}
我希望能给我这样的东西:
{1:3, 1:4, 1:5, 2:3, 2:4, 2:5}
但它反而给了我这个:
{1: 5, 2: 5}
我也尝试过像这里建议的那样反转循环:
print {a:b for b in [3, 4, 5] for a in [1, 2]}
但它仍然给了我错误的答案。而且我还在这样的列表中尝试了相同的理解:
print [(a, b) for a in [1, 2] for b in [3, 4, 5]]
这完全符合预期。
我对字典缺少什么?
仅供参考,python
命令返回:
Python 2.7.4 (default, Apr 19 2013, 18:32:33)
[GCC 4.7.3] on linux2