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. node.js - nodejs+express+vue2. python對(duì)8000行csv添加列3. javascript - 如何獲取未來元素的父元素在頁(yè)面中所有相同元素中是第幾個(gè)?4. javascript - onclick事件點(diǎn)擊不起作用5. python 字符串匹配問題6. DADB.class.php文件的代碼怎么寫7. 使用mysql命令行連接遠(yuǎn)程數(shù)據(jù)庫(kù)host跳轉(zhuǎn)8. 數(shù)據(jù)庫(kù) - Mysql的存儲(chǔ)過程真的是個(gè)坑!求助下面的存儲(chǔ)過程哪里錯(cuò)啦,實(shí)在是找不到哪里的問題了。9. javascript - 我的站點(diǎn)貌似被別人克隆了, google 搜索特定文章,除了域名不一樣,其他的都一樣,如何解決?10. python - 如何把152753這個(gè)字符串轉(zhuǎn)變成時(shí)間格式15:27:53

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