iT邦幫忙

0

Day 14: 魔術方法與運算子重載

  • 分享至 

  • xImage
  •  

Python 提供了一些特殊的函數,稱為 魔術方法(magic methods),它們讓我們可以自定義類別的行為,並重載運算子。這些魔術方法都以雙底線開頭和結尾,例如 initstr

  1. init:初始化物件
    init 是最常見的魔術方法,用來初始化物件。每次我們創建一個新的物件時,這個方法都會自動執行。
    https://ithelp.ithome.com.tw/upload/images/20241023/201695192pWfuOF5hv.png

https://ithelp.ithome.com.tw/upload/images/20241023/20169519gcjuVbSfGa.png
2. str:物件的字串表示
當我們想讓物件以字串形式輸出時,str 方法就派上用場了。這個方法定義了當我們使用print() 函數來輸出物件時,該如何顯示。
https://ithelp.ithome.com.tw/upload/images/20241023/20169519C7AvEC8CU6.png

https://ithelp.ithome.com.tw/upload/images/20241023/20169519CSsglRhvUs.png
3. 運算子重載:自訂數學運算符號
Python允許我們重載運算子,使其能夠處理自定義類別。這些運算符如 +、- 等,都有對應的魔術方法。比如,我們可以使用 add 來重載 + 運算符
https://ithelp.ithome.com.tw/upload/images/20241023/20169519FAqouSE3qG.png

https://ithelp.ithome.com.tw/upload/images/20241023/20169519EM6kFwDqjF.png
4. 常見的魔術方法列表
add(self, other):重載 + 運算子。
sub(self, other):重載 - 運算子。
mul(self, other):重載 * 運算子。
truediv(self, other):重載 / 運算子。
eq(self, other):重載 == 比較運算子。
lt(self, other):重載 < 比較運算子。


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言