【发布时间】:2018-01-30 05:15:12
【问题描述】:
我有一个字典列表:
dictionaries = [
{'id': 1, 'name': 'test1', 'description': 'foo'},
{'id': 2, 'name': 'test2', 'description': 'bar'}
]
我想将每个字典中的值与键分开,制作如下列表:
[(1 ,'test1', 'foo'), (2, 'test2', 'bar')]
我有以下代码来执行此操作...
values_list = []
for dict in dictionaries:
values_list.append(list(dict.values()))
当我在我的应用程序中运行此代码时,我得到:
TypeError: list() 接受 0 个位置参数,但给出了 1 个
进行这种类型的列表理解的正确方法是什么?
【问题讨论】:
-
[tuple(d.values()) for d in dictionaries] -
您的(发布的)代码也没有错误。您是否从其他地方复制了跟踪?
-
可能在完整代码的某个地方,您将 python 内置的
list()函数替换为您自己定义的不带参数的list()函数。这解释了为什么你会得到异常 -
@caramel1995 感谢您的提示。我要仔细检查整个应用程序...
标签: python python-3.x list dictionary list-comprehension