Python TypeError:将两个列表的值映射到一个新的one容器中的keyvalue对

2024-09-30 00:24:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个列表/数组titlesdescriptions,如下所示:

 titles = ['title1', 'title2', 'title3']
 descriptions = ['description1', 'description2', 'description3']

我需要制作一个列表/数组topic,将它们作为字典/对象的键值对包含在其中,如下所示:

topics [
   {
     'title': 'title1',
     'description': 'description1'
   },
   {
     'title': 'title2',
     'description': 'description2'
   },
   {
     'title': 'title3',
     'description': 'description3'
   }
]

我试过用PHP或JS这样做:


    titles = ['title1', 'title2', 'title3']
    descriptions = ['description1', 'description2', 'description3']

    topics = []

    for i in range(len(titles)):
        topics[i]['title'] = titles[i]
        topics[i]['description'] = descriptions[i]

但我犯了个错误:

topics[i]['title'] = titles[i] TypeError:“NoneType”对象没有属性“getitem

那我该怎么用python做呢


Tags: 对象列表topictitle数组descriptiontopicsdescriptions
1条回答
网友
1楼 · 发布于 2024-09-30 00:24:03

您可以使用zip进行列表理解:

[{'title': x, 'description': y} for x, y in zip(titles, descriptions)]

示例

titles = ['title1', 'title2', 'title3']
descriptions = ['description1', 'description2', 'description3']

print([{'title': x, 'description': y} for x, y in zip(titles, descriptions)])
# [{'title': 'title1', 'description': 'description1'}, 
#  {'title': 'title2', 'description': 'description2'}, 
#  {'title': 'title3', 'description': 'description3'}]

相关问题 更多 >

    热门问题