Skip to main content
 首页 » 编程设计

python之在列表中将姓氏、名字切换为名字姓氏

2025年05月04日17thcjp

我有两份体育运动员名单。一种结构简单:

['Lastname, Firstname', 'Lastname2, Firstname2'..] 

第二个是结构化列表的列表:

[['Firstname Lastname', 'Team', 'Position', 'Ranking']...] 

我最终想搜索第二个列表的内容,如果第一个列表中有匹配的名称,则提取信息。

为了简化,我需要将“姓氏、名字”换成“名字姓氏”以匹配列表 2 的格式。

任何帮助都会很棒。谢谢!

请您参考如下方法:

您可以将名称列表中的顺序交换为:

[" ".join(n.split(", ")[::-1]) for n in namelist] 

一个解释:这是一个列表理解,对每个项目做一些事情。以下是一些中间版本以及它们将返回的内容:

namelist = ["Robinson, David", "Roberts, Tim"] 
# split each item into a list, around the commas: 
[n.split(", ") for n in namelist] 
# [['Robinson', 'David'], ['Roberts', 'Tim']] 
 
# reverse the split up list: 
[n.split(", ")[::-1] for n in namelist] 
# [['David', 'Robinson'], ['Tim', 'Roberts']] 
 
# join it back together with a space: 
[" ".join(n.split(", ")[::-1]) for n in namelist] 
# ['David Robinson', 'Tim Roberts']