[2015-08-10] python021

運算符重載

  • 運算符重載是指在方法中攔截內置的操作–當類的實例出現在內置操作中,Python會自動調用自定義的方法,並且返回自定義方法的操作結果
    • 運算符重載讓類攔截常規的Python運算
      • 類可重載所有Python表達式雲算符
      • 類也可重載打印、函數調用、屬性點號運算等內置運算
    • 重載使類實例的行爲像內置類型
    • 重載通過提供特殊名稱的類方法實現
  • 運算符重載並非必須,並且通常也不是默認的
  • 除了_ _ init _ _ 和 _ _ del _ _ 之外,python類支持使用許多的特殊方法
    • 特殊方法都以雙下劃線開頭和結尾,有些特殊方法有默認行爲,沒有默認行爲的爲了留到需要的時候再實現
    • 這些特殊方法是Python中用來擴充類的強大工具,它們可以實現:
      模擬標準類型
      重載操作符
    • 特殊方法允許類通過重載標準操作符+,*,甚至包括分段下標及映射操作[]來模擬標準類型

可調用對象有:call()

  • 函數

    • 內置函數
    • 自定義函數
      • def
      • lambda
  • 類方法

函數的屬性:
        __doc__
        __name__
        __dict__
        __code__
        __globals__
方法:
    實例方法:綁定方法
    類方法:非綁定方法 
    靜態方法

方法的屬性:
    __doc__
    __name__
    __class__  :方法所屬的類
    __func__   :實現該方法的函數對象
    __self__   :調用此方法的實例
內置函數:
    __doc__
    __name__
    __self__
類: 
    __doc__
    __name__
    __bases__
    __dict__
    __module__    :定義了當前類的模塊名稱
實例:
    __class__
    __dict__
對象都有特殊方法:
    __init__
    __new__
    __del__
    __dir__()
    __add__()
    __ge__()
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章