首页 > 解决方案 > 将列表作为参数传递给函数 python

问题描述

场景:我正在尝试将字符串列表作为变量输入传递给函数。

问题:由于列表中的变量仅用于其中一个参数,因此出现错误must be str, not list

该函数将三个输入作为参数:

transformfile(path, name, id)

我有一个我想传递的名字列表:

list_names =['Name1', 'Name2', 'Name3']

我尝试直接传递它,但得到上述错误......

transformfile(path, list_names, id)

目标:在这种情况下,我的目标是让函数针对 list_names 中的每个名称运行多次。

问题:是否可以执行这种程序,或者我必须直接多次调用该函数?

标签: python

解决方案


该函数不是用来接收多个名称的,它只能处理单个名称,并且没有办法调用它来改变它。

幸运的是,这正是for循环的用途:

for name in list_names:
    transformfile(path, name, id)

这很好,很正常,等等。即使函数可以接收一个列表,它也可能在内部有一个 for 循环来做到这一点。


推荐阅读