码迷,mamicode.com
首页 > Web开发 > 详细

Python 类特殊方法__getitem__如何使用?

时间:2017-07-05 20:53:04      阅读:284      评论:0      收藏:0      [点我收藏+]

标签:

本文和大家分享的主要是python类的特殊方法__getitem__相关内容,一起来看看吧,希望对大家学习python有所帮助。
凡是在类中定义了这个__getitem__ 方法,那么它的实例对象(假定为p),可以像这样
p[key] 取值,当实例对象做p[key] 运算时,会调用类中的方法__getitem__
先用一个夸张一点的例子来说明这个问题。

当实例对象通过[] 运算符取值时,会调用它的方法__getitem__,从上面代码中输出二个笑脸可以看出来。
一般这样用
’’’
黄哥Python 联系方式,自己搜
’’’
class DataBase:
’’’Python 3 中的类’’’
def __init__(self, id, address):
’’’初始化方法’’’
self.id = id
self.address = address
self.d = {self.id: 1,
self.address: "192.168.1.1",
}
def __getitem__(self, key):
# return self.__dict__.get(key, "100")
return self.d.get(key, "default")
data = DataBase(1, "192.168.2.11")
print(data["hi"])
print(data[data.id])
或者
’’’
黄哥Python 联系方式,自己搜
’’’
class DataBase:
’’’Python 3 中的类’’’
def __init__(self, id, address):
’’’初始化方法’’’
self.id = id
self.address = address
def __getitem__(self, key):
return self.__dict__.get(key, "100")
data = DataBase(1, "192.168.2.11")
print(data["hi"])
print(data["id"])
来源:网络

Python 类特殊方法__getitem__如何使用?

标签:

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
jiangjie190
加入时间:2016-02-19
  关注此人  发短消息
文章分类
jiangjie190”关注的人------(0
jiangjie190”的粉丝们------(0
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!