[英]Python - Creating a list of dictionaries
我想在python中创建一个字典列表。 创建列表的常用方法对我有用。 那是mylist = [{1:1},{2:2}]
但是,当我尝试使用range()
函数的理解来创建它时, mylist = [a:a for a in range(10)]
我得到语法错误。
但令我惊讶的是,如果我以相同的方式构建一个集合,它会按预期工作。 myset = {a:a for a in range(10)}
我可以知道为什么会这样吗? 我正在使用Python3
我想你想要这样的东西:
mylist = [{a:a} for a in range(10)]
你忘记了{
和}
。
在第二个例子中,你的myset
是一个dict,而不是一个集合:
In [8]: type(myset)
Out[8]: dict
在这个例子中, {
和}
表示字典理解 ,而不是设置理解。
您在列表理解中缺少字典创建:
mylist = [{a:a} for a in range(10)]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.