如何将函数或命令应用于列表的每一行?

How to apply a function or command to every row of a list?

我有一个包含 2 列和数十行的字符串中的项目列表。我想从其中一列中过滤掉每个项目。我想我可以通过在每一行上应用 .split 命令来做到这一点,但如果有任何更好的方法来做到这一点,我想知道不涉及正则表达式。

编辑:我正在尝试使用以下名称列表来执行此操作:

"""Roy      Theresa     
Vincent     Diana   
Ralph       Natalie     
Eugene      Brittany""" etc.

当我使用时:

head, sep, tail = nameList.partition(' ')
print(head)

它只是 returns 列表中的第一个名字。我想将该代码应用于字符串的每一行,这样我就可以从每一行中获取名字,而不仅仅是整个列表中的第一个。

如果您有一个直接列表,例如:

a = ["Roy Theresa","Vincent Diana","Ralph Natalie","Eugene Brittany"]

那么您所要做的就是:

for i in a:
    print(i.split(" ")[0])

从列表的每个元素中获取第一个世界。

但是如果你有一个像这样的字符串:

b = """Roy      Theresa     
Vincent     Diana   
Ralph       Natalie     
Eugene      Brittany"""

首先你必须使用splitlines()把它分成不同的名字然后重复 获得名称列表后的最上面一步,如下所示:

new_list = b.splitlines()
for i in new_list:
    print(i.split(" ")[0])

您的输出将是:

Roy
Vincent
Ralph
Eugene