python錯(cuò)誤 __str__() Takes 0 positional arguments but 1 was given
問題描述
# -*- coding:gb2312 -*-class car: # 屬性# 方法 def __str__():print('哈哈哈哈哈哈啊哈')def move():print('車在移動(dòng)。') def Whistle():print('車載鳴笛。')BMW = car()print(BMW)
提示錯(cuò)誤:

google翻譯了一下,說是取0個(gè)位置參數(shù),但給出1不太理解這個(gè)什么意思。
問題解答
回答1:在class里面定義的函數(shù), 都需要提供一個(gè)self的位置參數(shù), 因?yàn)樵陬悓?shí)例化時(shí), 會(huì)傳入實(shí)例對(duì)象, 進(jìn)而和函數(shù)進(jìn)行綁定, 所以代碼應(yīng)該調(diào)整為:
# -*- coding:gb2312 -*-class car: # 屬性 # 方法 def __str__(self):return ('哈哈哈哈哈哈啊哈') def move(self):print('車在移動(dòng)。') def Whistle(self):print('車載鳴笛。')BMW = car()print(BMW)
對(duì)于 method 和 function的關(guān)系可以參考我的文章: Python: 函數(shù)與方法的區(qū)別
相關(guān)文章:
1. javascript - RN項(xiàng)目iOS端真機(jī)測(cè)試賬號(hào)無法登錄!2. 請(qǐng)問各位java自帶類的一些問題3. javascript - mongodb怎么設(shè)置用戶的賬戶不重復(fù)?4. css - transition 的使用?5. mysqld無法關(guān)閉6. redis sentinel怎么跑守護(hù)進(jìn)程以及日志記錄位置的?7. python 字符串匹配問題8. Discuz! Q 有人用過嗎?9. android - 分享到微信,如何快速轉(zhuǎn)換成字節(jié)數(shù)組10. mysql - 數(shù)據(jù)庫(kù):獲取兩個(gè)字段與獲取*,傳輸?shù)臄?shù)據(jù)量差距大嗎?

網(wǎng)公網(wǎng)安備