2012-02-06 188 views
0

雖然編程與Python我經常用下面的模糊性困惑:Python函數混淆

它應該是:功能(a)或a.function()。雖然問題是過於籠統,可有人告訴我這情況發生時?

回答

0

當你稱呼它a.function()你調用一個名爲名爲「一個」對象「功能」的方法。

如果你不知道的方法和功能/程序的區別,你需要學習Object Oriented Programming概念。

4

你的困惑可能從蟒蛇是如何定義的實例方法梗...

class Person 

    def speak(self, message): 
     print message 

在這個定義看,我可以看到別人怎麼會覺得你必須通過Person作爲第一個參數。

但它僅僅是Python的方式,使self,人的當前實例,提供給方法。

所以正確的方法是將

person_instance = Person() 
person_instance.speak("This is a message")