sha*_*har 2 python dictionary python-3.x
我想在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)]
Run Code Online (Sandbox Code Playgroud)
你忘了{和}.
在第二个例子中,你myset是一个dict,而不是一个集合:
In [8]: type(myset)
Out[8]: dict
Run Code Online (Sandbox Code Playgroud)
在这个例子中,{并且}表示字典理解,而不是设置理解.