亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

python - 類 對象 函數后面的參數問題,勉強看懂但是要自己寫出來就感覺很困難

瀏覽:81日期:2022-09-17 09:04:46

問題描述

class Ball: def setName(self,name):self.name=name def kick(self):print(’我是%s,該死的,誰踢我...’%self.name)a=Ball()a.setName(’球A’)b=Ball()b.setName(’球B’)c=Ball()c.setName(’球C’)a.kick()c.kick()我是球A,該死的,誰踢我...我是球C,該死的,誰踢我...

a.setName()函數定義的時候有兩個參數self,name。a.setName(’球A’)后面又只有一個了,那是表示self=‘球A’嗎,那第二個函數kick里的語句sefl.name又作如何解釋呢?

class Ball:

def _init_(self,name): self.name=namedef kick(self): print(’我是%s,該死的,誰踢我...’%self.name)

b=Ball(’土豆’)b.kick()c-Ball()? ? b=Ball(’土豆’)TypeError: object() takes no parameters

前后對比,詳解區別及代碼矯正。

問題解答

回答1:

Python 類的函數就是這么寫得,是 a.setName(’球A’) 是 name=’球A’。

回答2:

self是動態的,每次創建一個實例,它就代表這個實例本身,就像 Java 里的this。在 Python 里的語法就是這樣,類方法定義的時候需要顯式定義self,但是在調用的時候 Python 自動隱式幫你傳入了 self 參數。

在 Python里 真正的實例化方法是__new__,__init__只是完成了參數的初始化,然后交給__new__實例化,所以 b = Ball(’土豆’) 這個調用傳參格式要和__init__一致。

標簽: Python 編程
主站蜘蛛池模板: 国产成人啪午夜精品网站 | 亚洲婷婷综合中文字幕第一页 | 99久久婷婷国产综合精品hsex | 又黄又爽又猛午夜性色播在线播放 | 国产精品久久久久久久久久一区 | 亚洲国产情侣一区二区三区 | aaaaaaa一级毛片 | 国产精品黄在线观看免费软件 | 一级毛片一级毛片一级毛片一级毛片 | juliaann与黑人丝袜交 | 在线免费一区二区 | 午夜一级毛片免费视频 | 久久久综合视频 | 99欧美在线| 婷婷国产偷v国产偷v亚洲 | 欧美成人性高清观看 | 麻豆传媒在线网站 | 91精品国产美女福到在线不卡 | 日韩中文字幕免费版 | 国产精品卡哇伊小可爱在线观看 | 一级欧美视频 | 亚洲一区二区三区久久精品 | 国内精品一区二区三区 | 91桃色视频在线观看 | 天天怕夜夜怕狠狠怕 | 538prom在线| 特级一级毛片免费看 | 一区二区高清视频 | 国产一级做a爰片在线 | 高清视频 一区二区三区四区 | 国产成人午夜性视频影院 | 毛片色| 国产又黄又爽又色视频观看免费 | 国产肥老妇视频∵ | 久久精品国产精品亚洲婷婷 | 国内精品久久久久久久久 | 欧美一级久久久久久久久大 | 伊人影院99| 清草在线视频精品 | 精品九九久久 | 中文 字幕 高清 在线 |