for循环python中函数参数中列表的输入列表

2024-06-06 15:35:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用下面的代码创建一个函数,该函数在调用时打开多个文件

name = [['tina', 'vans', 'john', 'sam', 'victory'],['nanny', 'pink', 'sidewalk', 'paper', 'team'],['jimmy', 'rob', 'stack', 'layla', 'london']]


def get_name(in1, in2, in3, in4, in5): 
    open(f'{[in1]}.txt')
    open(f'{[in2]}.txt')
    open(f'{[in3]}.txt')
    open(f'{[in4]}.txt')
    open(f'{[in5]}.txt')
    

我现在的问题是,我需要一个for循环来插入列表列表中的函数参数

第一个['tina','vans','john','sam','victory'] 第二名[‘保姆’、‘粉红’、‘人行道’、‘报纸’、‘团队’] 等等

任何信息将不胜感激

谢谢


Tags: 函数nametxt列表samopenjohnin1
3条回答

我建议您在函数中只使用for循环两次。 无法将整个列表作为函数的参数同时放置

name = [['tina', 'vans', 'john', 'sam', 'victory'],['nanny', 'pink', 'sidewalk', 'paper', 'team'],['jimmy', 'rob', 'stack', 'layla', 'london']]

def get_name(name_lst): 
    for lst_ele in name_lst:
        for name_ele in lst_ele:
            open(f'{[name_ele]}.txt')

你可以试试这个

names = [['tina', 'vans', 'john', 'sam', 'victory'],['nanny', 'pink', 'sidewalk', 'paper', 'team'],['jimmy', 'rob', 'stack', 'layla', 'london']]

def get_name(*names): 
    for name in names:
        open(f'{name}.txt')

for name in names:
    get_name(*name)

试试这个方法

name = [['tina', 'vans', 'john', 'sam', 'victory'],['nanny', 'pink', 'sidewalk', 'paper', 'team'],['jimmy', 'rob', 'stack', 'layla', 'london']]


def get_name(files): 
    open(f'{[files[0]]}.txt')
    open(f'{[files[1]]}.txt')
    open(f'{[files[2]]}.txt')
    open(f'{[files[3]]}.txt')
    open(f'{[files[4]]}.txt')

for i in name:

    get_name(i)

相关问题 更多 >