我正在使用collection的namedtuple从函数中返回元组列表,如下所示:
def getItems(things_list) -> list:
for i, j in enumerate(things_list):
[*things_id] = things_list[i].id
[*things_title] = things_list[i].title
things_structure = namedtuple('things', ['id', 'title'])
[*things_list] = [
things_structure(things_id, things_title)
]
return things_list
如果我跑了
callGetItems = getItems(list_of_things) # assume list_of_things is a dictionary
print(callGetItems)
它只打印返回值的第一个索引,正如您所看到的,我实际上希望整个字典都打印出它们各自的id和title(假设字典中至少有3个不同的键值对)
p、 如果我在函数内打印,它会按预期打印存储在[*things\u list]变量中的所有元素,但对于迭代返回值(即在函数外)不能这样说。请帮忙。
要去除泡沫,假设这是字典中的物品列表:
list_of_things = [
{"id" : 1,
"title" : "waterbottle",
"description" : "a liquid container"},
{"id": 2,
"title": "lunchbox",
"description": "a food container"}
]
# etc...
1条答案
按热度按时间jmo0nnb31#
这就是你想要的吗?从原始dict列表创建命名元组列表?