遍历* args?

发布于 2021-01-29 17:20:59

我有一个正在处理的脚本,我需要在其中接受多个参数,然后遍历它们以执行操作。我开始定义函数并使用* args。到目前为止,我有类似以下内容:

def userInput(ItemA, ItemB, *args):
    THIS = ItemA
    THAT = ItemB
    MORE = *args

我想要做的是将*
args中的参数放入一个可以迭代的列表中。我在Google上都看过其他问题,但似乎找不到我想做的答案。先谢谢您的帮助。

关注者
0
被浏览
213
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    获得 准确的 语法:

    def userInput(ItemA, ItemB, *args):
        THIS = ItemA
        THAT = ItemB
        MORE = args
    
        print THIS,THAT,MORE
    
    
    userInput('this','that','more1','more2','more3')
    

    您将分配给*中的前面的。然后MORE成为元组签名中具有可变长度内容的元组args``MORE``args``userInput

    输出:

    this that ('more1', 'more2', 'more3')
    

    正如其他人所述,将其args视为可迭代的对象更为常见:

    def userInput(ItemA, ItemB, *args):    
        lst=[]
        lst.append(ItemA)
        lst.append(ItemB)
        for arg in args:
            lst.append(arg)
    
        print ' '.join(lst)
    
    userInput('this','that','more1','more2','more3')
    

    输出:

    this that more1 more2 more3
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看