我在复制到文本文件的excel文件中有一个名称列表。名称的格式为“姓氏,姓氏”,其中姓氏是名字(和中间名,如果适用)。在少数情况下,有两个中间名。如何删除逗号并更改名称顺序,以使名字(和中间名)位于姓氏之前?

原版的:

lastname1, firstname1
lastname2, firstname2 middlename2
lastname3, firstname3


我想要的是:

firstname1 lastname1
firstname2 middlename2 lastname2
firstname3 lastname3


PS-我在当地大学教授实验室,这是一本由数百个名字组成的成绩簿。

最佳答案

您可以使用split来分隔逗号上的名称:

for name in names:
    last, first = name.split(',', 1)
    print(first, last)


样本数据:

names = [x.strip() for x in """
    lastname1, firstname1
    lastname2, firstname2 middlename2
    lastname3, firstname3
""".split('\n')[1:-1]]


印刷品:

firstname1 lastname1
firstname2 middlename2 lastname2
firstname3 lastname3


如果您需要从文件中读取名称:

with open("file_location/file_name.txt") as f:
    names = f.readlines()

09-29 22:11