如果在类中定义了__getitem__()方法,那么他的实例对象(假设为P)就可以这样P[key]取值。当实例对象做P[key]运算时,就会调用类中的__getitem__()方法。

class DataTest:def __init__(self, id, address):self.id = idself.address = addressself.d = {self.id: 1,self.address: "192.168.1.1"}def __getitem__(self, key):# return "hello"return key*keydata = DataTest(1, "192.168.2.11")
print(data[1000])
print(data[2])
print(data[30])

输出:

1000000
4
900

假如此时__getitem__里面是return "hello",那么无论print(data[1000])、print(data[2])、print(data[30])哪个都会输出hello

python __getitem__()方法理解_至尊小宝的博客-CSDN博客

python __getitem__()方法==>可以直接通过P[key]做运算相关推荐

  1. python __getitem__()方法理解

    如果在类中定义了__getitem__()方法,那么他的实例对象(假设为P)就可以这样P[key]取值.当实例对象做P[key]运算时,就会调用类中的__getitem__()方法. # -*- co ...

  2. Python.__getitem__方法

    Python的魔法方法__getitem__ 可以让对象实现迭代功能,这样就可以使用for...in... 来迭代该对象了 class Animal:def __init__(self, animal ...

  3. python魔方方法__getitem__、__setitem__和__len__

    python魔方方法__getitem__.setitem__和__len 目录 python魔方方法__getitem__.__setitem__和__len__ 一.简介 二.详解 三.代码 四. ...

  4. python 类中的 __getitem__方法

    经常会遇到python类中遇到一些特殊的方法,最常见的就是__ini__方法,想必大家都遇到过,今天来谈谈另外一种非常好用的类方法--__getitem__ 来点干货, __getitem__的作用是 ...

  5. python魔法方法和普通方法_Python龙珠训练营九:魔法方法

    魔法方法总是被双下划线包围,例如 __init__ . 魔法方法是面向对象的 Python 的一切,如果你不知道魔法方法,说明你还没能意识到面向对象的 Python 的强大. 魔法方法的"魔 ...

  6. python 魔法方法常用_Python魔法方法指南

    有很多人说学习Python基础之后不知道干什么,不管你是从w3c还是从廖雪峰的教程学习的,这些教程都有一个特点:只能引你快速入门,但是有关于Python的很多基础内容这些教程中都没介绍,而这些你没学习 ...

  7. 【python 10】python 魔术方法

    文章目录 一.`__getitem__` 获取属性 二.`__setitem__` 设置属性 三.`__delitem__` 删除属性 四.`__len__` 求长度 五.`__call__` 将类变 ...

  8. python 魔术方法

    python 魔术方法 常用魔术方法 魔术方法就是一个类的特殊方法,和普通方法唯一的不同时,普通方法需要调用!而魔术方法由系统自动调用. 1.__init__ 初始化魔术方法 触发时机:初始化对象时触 ...

  9. Python 魔术方法指南

    http://pycoders-weekly-chinese.readthedocs.org/en/latest/issue6/a-guide-to-pythons-magic-methods.htm ...

最新文章

  1. 习题7-6 统计大写辅音字母 (15 分)
  2. 大牛深入浅出讲解C语言#define宏定义应用及使用方法
  3. 预训练模型需要知道的知识点总结,万字长文带你深入学习(建议收藏)
  4. 【0802 | Day 7】Python进阶(一)
  5. Convert、Parse、TryParse、(int)等区别(细节小记)
  6. Go Web 编程--应用 ORM
  7. 「小程序JAVA实战」小程序页面的上拉下拉刷新(50)
  8. vue+element+node构建单片机控制系统
  9. Elasticsearch自定义插件
  10. 【EJB】Developing EJB Applications -- Chapter 2(创建企业级Bean项目)
  11. 明解C语言(第3版)入门篇 - 第六章练习题解
  12. Echarts实现区级行政区划地图
  13. 安溪八中高考2021成绩查询,2020福建省地区高考成绩排名查询
  14. 单代号网络图计算例题_单代号网络图的绘制与6个时间参数的计算,一篇全掌握...
  15. html网页字体颜色代码大全
  16. Rabbitmq使用优先级队列实现消息插队
  17. 简单又好用得高效工具分享
  18. 商业研究(12):下厨房,美食菜谱分享社区及新型电商,唯有美食与爱不可辜负
  19. 预计招收150人,往年有机试,清华计算机系夏令营来袭
  20. win10在命令行下运行python程序

热门文章

  1. 融资租赁业务的基本知识
  2. 微服务架构案例(01):项目技术选型简介,架构图解说明
  3. 数据产品-数据分析和可视化工具Excel函数使用
  4. Spring安装与入门
  5. Android学习笔记(二)基础知识(1)
  6. flash 基础语法
  7. CodeVs1519 过路费
  8. Python基础知识(1)简介
  9. jmeter 响应结果分析一
  10. 页面图片延时加载(附实例下载)