文章詳情頁
python錯誤 __str__() Takes 0 positional arguments but 1 was given
瀏覽:164日期:2022-06-28 11:53:51
問題描述
# -*- coding:gb2312 -*-class car: # 屬性# 方法 def __str__():print('哈哈哈哈哈哈啊哈')def move():print('車在移動。') def Whistle():print('車載鳴笛。')BMW = car()print(BMW)
提示錯誤:

google翻譯了一下,說是取0個位置參數,但給出1不太理解這個什么意思。
問題解答
回答1:在class里面定義的函數, 都需要提供一個self的位置參數, 因為在類實例化時, 會傳入實例對象, 進而和函數進行綁定, 所以代碼應該調整為:
# -*- coding:gb2312 -*-class car: # 屬性 # 方法 def __str__(self):return ('哈哈哈哈哈哈啊哈') def move(self):print('車在移動。') def Whistle(self):print('車載鳴笛。')BMW = car()print(BMW)
對于 method 和 function的關系可以參考我的文章: Python: 函數與方法的區別
相關文章:
1. 關docker hub上有些鏡像的tag被標記““This image has vulnerabilities””2. docker-compose中volumes的問題3. boot2docker無法啟動4. docker安裝后出現Cannot connect to the Docker daemon.5. nignx - docker內nginx 80端口被占用6. dockerfile - 為什么docker容器啟動不了?7. node.js - antdesign怎么集合react-redux對input控件進行初始化賦值8. docker容器呢SSH為什么連不通呢?9. java - SSH框架中寫分頁時service層中不能注入分頁類10. 關于docker下的nginx壓力測試
排行榜

網公網安備