从Python中的函数中访问*args

Sac*_*try 6 python arguments function args

大家好,这可能是一个非常简单的东西,我忽略了但是有人能指出我正确的方向来解决这个问题.

def nodeFunction(self,*args):
    return self[1] + self[2]    
Run Code Online (Sandbox Code Playgroud)

基本上我要做的是抓住通过参数传入的数据.我只是坚持使用时引用函数内部参数的语法*args.

sen*_*rle 14

args 只是一个列表:

def nodeMethod(self, *args):
    return args[0], args[1]
Run Code Online (Sandbox Code Playgroud)

你是这个意思吗?

请注意,"args"并没有什么特别之处.您可以使用任何变量名称.重要的是*运营商.

>>> class Node(object):
...     def nodeMethod(self, *cornucopia):
...         return cornucopia[0], cornucopia[1]
... 
>>> n = Node()
>>> n.nodeMethod(1, 2, 3)
(1, 2)
Run Code Online (Sandbox Code Playgroud)

仍然,"args"是最惯用的变量名称; 如果没有其他明显的理由,我就不会使用其他任何东西.


Kar*_*ath 5

def nodeFunction(self, arg1, arg2, *args)
Run Code Online (Sandbox Code Playgroud)

*arg在参数列表中意味着:将剩余参数作为变量列表传递arg。所以检查如何处理list。注意:列表索引从0.