python __getitem__()方法理解


如果在類中定義了__getitem__()方法,那么他的實例對象(假設為P)就可以這樣P[key]取值。當實例對象做P[key]運算時,就會調用類中的__getitem__()方法。

 

  1.  
    # -*- coding:utf-8 -*-
  2.  
    class DataTest:
  3.  
    def __init__(self,id,address):
  4.  
    self.id=id
  5.  
    self.address=address
  6.  
    self.d={self.id: 1,
  7.  
    self.address: "192.168.1.1"
  8.  
    }
  9.  
     
  10.  
    def __getitem__(self,key):
  11.  
    return "hello"
  12.  
     
  13.  
     
  14.  
    data=DataTest( 1,"192.168.2.11")
  15.  
    print data[2]


輸出結果為:

 

 

hello


在這我認為實例對象的key不管是否存在都會調用類中的__getitem__()方法。而且返回值就是__getitem__()方法中規定的return值。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM