在第三版Python Cookbook中,作者发表以下声明:
“ ...也可以通过创建一个元组序列并将它们传递给
dict()
函数来完成。例如:
p1 = dict((key, value) for key, value in prices.items() if value > 200)
作者对作为“序列”的参数传递给dict()
构造函数的引荐有点让我怀疑... for ... in ...
到底是什么?这不是表达吗?不能仅仅输入Python解释器:for x in (1,2,3)
并接收结果吗?例如,documentation代表list()
表示构造函数期望可迭代,但是我不清楚发生了什么。
dict
可以采用键/值对的迭代来构造新实例。表达式p1 = dict((key, value) for key, value in prices.items() if value > 200)