迭代
上一次的输出,作为下一次的输入,返回自身,代码如下

dic = {"00":"a", "01":"b", "10":"c", "11":"d"}
for each in dic:print("%s -> %s" % (each, dic[each]))
00 -> a
01 -> b
10 -> c
11 -> d

打印斐波那契数列,代码如下

class Fibs():def __init__(self, n=20):self.a = 0self.b = 1self.n = ndef __iter__(self): # 返回自身return selfdef __next__(self): # 设置next魔法方法self.a, self.b = self.b, self.a + self.bif self.a > self.n:raise StopIterationreturn self.afib = Fibs(100)
for each in fib:print(each)
1
1
2
3
5
8
13
21
34
55
89

python入门——P48魔法方法:迭代器相关推荐

  1. python入门——P41魔法方法:构造和析构

    魔法方法总是被双下划线包围 魔法方法是面向对象Python的一切 魔法方法的强大,体现在他们总能在合适的时候自动调用 __init__(self[, -]) 在实例被构造初始就需要属性,对一个对象进行 ...

  2. python入门——P47魔法方法:定制序列

    容器类型的协议 希望容器不可变,则只需定义__len_()和__getitem_()方法 如果希望容器可变,除了上面两个,还需要__setitem_()和__delitem_()两个方法 编写一个不可 ...

  3. python入门——P45魔法方法:属性访问

    下面是通过property访问属性的用法 class C():def __init__(self, size=10):self.size = sizedef getsize(self):return ...

  4. python入门——P43魔法方法:算数运算2

    改写魔法方法,下发代码把int类的加减进行了互换 class New_num(int):def __add__(self, other):return int.__sub__(self, other) ...

  5. python入门——P42魔法方法:算数运算1

    下面是算数运算的一些魔法方法 我们接下来可以做个小改变 class New_num(int):def __add__(self, other):return int.__sub__(self, oth ...

  6. python入门——P46魔法方法:描述符(Property的原理)

    描述符 描述符就是将某种特殊类型的类的实例,指派给另一个类的属性. 特殊类型: __get_(self, instance, owner) 用于访问属性,返回属性的值 __set_(self, ins ...

  7. python入门——P44魔法方法:简单定制

    写个计时器的类 import time as t class Mytimer():def __init__(self):self.unit = ["year", "mou ...

  8. 刻意练习:Python基础 -- Task11. 魔法方法

    背景 我们准备利用17天时间,将 "Python基础的刻意练习" 分为如下任务: Task01:变量.运算符与数据类型(1day) Task02:条件与循环(1day) Task0 ...

  9. python深度讲解_《深度剖析CPython解释器》21. Python类机制的深度解析(第五部分): 全方位介绍Python中的魔法方法,一网打尽...

    楔子 下面我们来看一下Python中的魔法方法,我们知道Python将操作符都抽象成了一个魔法方法(magic method),实例对象进行操作时,实际上会调用魔法方法.也正因为如此,numpy才得以 ...

最新文章

  1. Arm 发布Mali多媒体套件,机器学习将不再是高端手机的专享
  2. 二叉树结点地址小错误
  3. 学习笔记(五)——JavaScript(二)
  4. 在Vue2.0项目中与H5项目中获取、设置、清除cookie的一些注意点
  5. 刚发现的,免费领取1024G云空间
  6. MYSQL 开启root远程登录权限
  7. C语言实现镜子mirror算法(附完整源码)
  8. gitlens突然不显示了_损失百万!预防LED显示屏火灾隐患,从三方面入手
  9. 深度学习(四十五)——Stack GAN, GAN Ensemble, Pix2Pix, CycleGAN
  10. 享受Android应用程序的Java技术盛宴
  11. Kibana+Logstash+Elasticsearch 日志查询系统
  12. 数字智能新时代,IT基础设施,Are you ready?
  13. 【FFMPEG】使用ffmpeg类库打开流媒体
  14. Python周刊518期
  15. table——caption
  16. php的cmf框架哪个比较好,不要用这个CMF ThinkCMF内容管理框架,做最简约的ThinkPHP开源软件...
  17. 清北学堂模拟赛d4t4 a
  18. 教你如何设计ASP网上考试系统
  19. 小米联合金山云发布“1KM边缘计算” 携手布局“云+边缘”新赛道
  20. php dsa 签名,openssl使用DSA算法生成签名实例详解_PHP教程

热门文章

  1. 组策略查看login记录_k8s实践记录(五)
  2. 一、SecureCRT 8.0 客户端连接服务器
  3. AtCoder Beginner Contest 081
  4. Spring 定时器结合线程池
  5. Hadoop伪分布安装配置
  6. form input类型
  7. 关于子元素连续数字和英文内容溢出父元素的问题
  8. android 按钮点击动画效果_如何用纯css打造类materialUI的按钮点击动画并封装成react组件...
  9. redis key/value 前面出现\xac\xed\x00\x05t\x00\x06 已解决
  10. 手机的余存电量还有多少的时候适合充电?