繁体   English   中英

Python - 创建字典列表

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM