大家好這可能是一個非常簡單的事情,我忽略了,但是有人可以指出我如何處理這個問題的正確方向。從Python中的函數中訪問* args
def nodeFunction(self,*args):
return self[1] + self[2]
基本上我想要做的就是抓取通過參數傳入的數據。當我使用*args
時,我只是停留在函數內引用參數的語法上。
大家好這可能是一個非常簡單的事情,我忽略了,但是有人可以指出我如何處理這個問題的正確方向。從Python中的函數中訪問* args
def nodeFunction(self,*args):
return self[1] + self[2]
基本上我想要做的就是抓取通過參數傳入的數據。當我使用*args
時,我只是停留在函數內引用參數的語法上。
args
是一個簡單的列表:
def nodeMethod(self, *args):
return args[0], args[1]
那是什麼意思?
請注意,沒有什麼特別的「args」。你可以使用任何變量名稱。這就是重要的運營商*
。
>>> class Node(object):
... def nodeMethod(self, *cornucopia):
... return cornucopia[0], cornucopia[1]
...
>>> n = Node()
>>> n.nodeMethod(1, 2, 3)
(1, 2)
儘管如此,「args」是最常用的變量名稱;沒有一個好的理由,我不會使用其他任何東西,這對其他人來說是顯而易見的
血腥的地獄,我是一個白癡,對不起仍然得到蟒蛇的竅門。那就是我正在尋找的謝謝。我可以接受答案。 – SacredGeometry
def nodeFunction(self, arg1, arg2, *args)
*arg
在參數列表是指:通過其剩餘參數作爲變量arg
列表。因此請檢查如何處理list。注意:列表索引從0
開始。
Python中整齊的經驗法則是名稱必須來自某個地方;他們不會被語言魔法插入。 (一個實例方法只將實例稱爲self,因爲它是該方法的第一個參數 - 沒有什麼神奇的'this'。屬性的setter指的是它被設置爲參數的值 - 沒有如果你想在一個模塊'foo'中使用一個函數,你必須導入'foo',這樣解釋器就知道它是什麼了等等) – katrielalex