Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将列表传递给函数?_Python_Function - Fatal编程技术网

Python 如何将列表传递给函数?

Python 如何将列表传递给函数?,python,function,Python,Function,我使用nameparser函数将一列传递给该函数并生成一列 我正在运行这个: from nameparser import HumanName name = HumanName("JONATHON FURBER") name.first 但我不想一个接一个地做,我想做的是一长串的名字。我该怎么办 简短的回答是是的,您可以在python中使用列表调用函数 让我们深入探讨你的问题。我假设您使用的是Python库,它似乎不理解matlab中的向量调用。因此,您可能应该循环查看要分析的名称列表。简短的

我使用
nameparser
函数将一列传递给该函数并生成一列

我正在运行这个:

from nameparser import HumanName
name = HumanName("JONATHON FURBER")
name.first

但我不想一个接一个地做,我想做的是一长串的名字。我该怎么办

简短的回答是是的,您可以在python中使用列表调用函数


让我们深入探讨你的问题。我假设您使用的是Python库,它似乎不理解matlab中的向量调用。因此,您可能应该循环查看要分析的名称列表。

简短的回答是是的,您可以在python中使用列表调用函数

让我们深入探讨你的问题。我假设您使用的是Python库,它似乎不理解matlab中的向量调用。因此,您可能应该循环查看要分析的姓名列表。

使用nameparser(),您可以声明一个人员列表,并循环通过这些人员将每个人传递到nameparser.HumanName并打印出他们的名字:

from nameparser import HumanName

people = ["JONATHON FURBER",
          "Dr. Juan Q. Xavier de la Vega III (Doc Vega)"
          ]

for person in people:
    name = HumanName(person)
    print(name.first)
返回:

JONATHON
Juan
['JONATHON', 'Juan']
[('JONATHON', 'JONATHON FURBER'),
 ('Juan', 'Dr. Juan Q. Xavier de la Vega III (Doc Vega)')]
或者,您最好将所有的名字存储为一个列表。这可以通过列表理解来完成:

from pprint import pprint as pp

first_names = [HumanName(person).first
               for person in people
               ]

pp(first_names)
combined_list = [(fn, person) for fn, person in zip(first_names, people)]
pp(combined_list)
返回:

JONATHON
Juan
['JONATHON', 'Juan']
[('JONATHON', 'JONATHON FURBER'),
 ('Juan', 'Dr. Juan Q. Xavier de la Vega III (Doc Vega)')]
此外:您在评论中询问了如何组合结果,例如,您可以在元组中使用姓名对人员进行压缩,并将其存储在列表中:

from pprint import pprint as pp

first_names = [HumanName(person).first
               for person in people
               ]

pp(first_names)
combined_list = [(fn, person) for fn, person in zip(first_names, people)]
pp(combined_list)
返回:

JONATHON
Juan
['JONATHON', 'Juan']
[('JONATHON', 'JONATHON FURBER'),
 ('Juan', 'Dr. Juan Q. Xavier de la Vega III (Doc Vega)')]
将其保存到文件:

with open("people.txt", "w") as wf:
    for person in combined_list:
        wf.write(person[0] + ', ' + person[1])
使用nameparser(),您可以声明一个人员列表,并通过循环将每个人员传递到nameparser.HumanName并打印出他们的名字:

from nameparser import HumanName

people = ["JONATHON FURBER",
          "Dr. Juan Q. Xavier de la Vega III (Doc Vega)"
          ]

for person in people:
    name = HumanName(person)
    print(name.first)
返回:

JONATHON
Juan
['JONATHON', 'Juan']
[('JONATHON', 'JONATHON FURBER'),
 ('Juan', 'Dr. Juan Q. Xavier de la Vega III (Doc Vega)')]
或者,您最好将所有的名字存储为一个列表。这可以通过列表理解来完成:

from pprint import pprint as pp

first_names = [HumanName(person).first
               for person in people
               ]

pp(first_names)
combined_list = [(fn, person) for fn, person in zip(first_names, people)]
pp(combined_list)
返回:

JONATHON
Juan
['JONATHON', 'Juan']
[('JONATHON', 'JONATHON FURBER'),
 ('Juan', 'Dr. Juan Q. Xavier de la Vega III (Doc Vega)')]
此外:您在评论中询问了如何组合结果,例如,您可以在元组中使用姓名对人员进行压缩,并将其存储在列表中:

from pprint import pprint as pp

first_names = [HumanName(person).first
               for person in people
               ]

pp(first_names)
combined_list = [(fn, person) for fn, person in zip(first_names, people)]
pp(combined_list)
返回:

JONATHON
Juan
['JONATHON', 'Juan']
[('JONATHON', 'JONATHON FURBER'),
 ('Juan', 'Dr. Juan Q. Xavier de la Vega III (Doc Vega)')]
将其保存到文件:

with open("people.txt", "w") as wf:
    for person in combined_list:
        wf.write(person[0] + ', ' + person[1])

哪种编程语言?欢迎使用Stackoverflow。您正在使用哪种编程语言?欢迎使用Stackoverflow。你在用吗?谢谢古斯塔夫·拉斯穆森。这太棒了。非常感谢你!!我可以知道我怎样才能回到原来的输入列表并输出它?我很高兴:如果你发现这个答案有用,请考虑把它投票并标记为正确答案。要连接这两个列表,可以使用zip()函数创建一个字典或元组列表。我很高兴听到:)谢谢Gustav Rasmussen。这太棒了。非常感谢你!!我可以知道我怎样才能回到原来的输入列表并输出它?我很高兴:如果你发现这个答案有用,请考虑把它投票并标记为正确答案。要连接这两个列表,可以使用zip()函数创建一个字典或元组列表