1.迭代器程序(实现菲比那次数列并且可以抛出与接收异常)

def fib(max):
n,a,b = 0,0,1
while n < max:
#print(b)
yield b
a,b = b,a+b
n= n+1
return 'done'
g = fib(10)
while True:
try:
x = g.__next__()
print('g:',x)
except StopIteration as e:
print('Generator return value:',e.value)
break

2.利用迭代器实现简单的“单线程并行”吃包子(实际上还是串行)

import time
def consumer(name):
print('[%s] prepare to eat baozi!!'%name)
while True:
baozi = yield
print('baozi [%s] is coming,ate by [%s]'%(baozi,name)) def producer(name):
c = consumer('A')
c2 = consumer('B')
c.__next__()
c2.__next__()
print('start'.center(30,'-'))
for i in range(10):
time.sleep(1)
print('just one,half to half')
c.send(i)
c2.send(i) producer('wt')

  

Python3中简单的迭代器程序的更多相关文章

  1. 在计算机中简单的hello程序的运行

    我之前很好奇就是你所写的代码到底是如何在计算机中执行的,到底是怎样开始,从哪里开始,在哪里执行,到哪里结束,之间到底是怎么的一个过程,带着这些问题,逐渐看这方面的书籍,最近买的<深入理解计算机系 ...

  2. 在VS中手工创建一个最简单的WPF程序

    如果不用VS的WPF项目模板,如何手工创建一个WPF程序呢?我们来模仿WPF模板,创建一个最简单的WPF程序. 第一步:文件——新建——项目——空项目,创建一个空项目. 第二步:添加引用,Presen ...

  3. win32程序中简单应用mfc

    今日写程序在win32中用CRect发现报错,突然想起来.要引入mfc库.想重新建立一个工程添加对mfc的支持.发现选项不能选.查资料后发现. 在win32程序中简单应用mfc库,只需要简单的引入&l ...

  4. Python中生成器和迭代器的区别(代码在Python3.5下测试):

    https://blog.csdn.net/u014745194/article/details/70176117 Python中生成器和迭代器的区别(代码在Python3.5下测试):Num01–& ...

  5. python3.X中简单错误处理,和Python2区别

    1.print 1.1 Print是一个函数 在Python3中print是个函数,这意味着在使用的时候必须带上小括号,并且它是带有参数的. >>> print 'hello wor ...

  6. python3中的map对象返回的是迭代器,该迭代器用list()转列表之后,再次用list()转化时会返回空

    练习代码的时候,发现python3中的map()函数返回的可迭代对象,在用list()转成列表之后,再次用list()转列表的时候,获取的是空值(如下所示),所以查了一下python3的map()对象 ...

  7. Python3学习之路~2.2 简单的购物车程序

    程序:购物车程序 需求:启动程序后,让用户输入工资,然后打印商品列表允许用户根据商品编号购买商品用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒 可随时退出,退出时,打印已购买商品和余额 代码 ...

  8. python3中socket套接字的编码问题解决

    一.TCP 1.tcp服务器创建 #创建服务器 from socket import * from time import ctime #导入ctime HOST = '' #任意主机 PORT = ...

  9. 详解:Python2中的urllib、urllib2与Python3中的urllib以及第三方模块requests

    在python2中,urllib和urllib2都是接受URL请求的相关模块,但是提供了不同的功能.两个最显著的不同如下: 1.urllib2可以接受一个Request类的实例来设置URL请求的hea ...

随机推荐

  1. 如何隐藏掉Nginx的版本号

    最近新学习了一个命令curl,里面有一个参数-I可以查看到网站使用的是哪种服务器,比如: zhangxiaoliudeMacBook-Pro-2:~ zhangxiaoliu$ curl -I htt ...

  2. 获取wifi热点

    https://stackoverflow.com/questions/31555640/how-to-get-wifi-ssid-in-ios9-after-captivenetwork-is-de ...

  3. L2-022. 重排链表

    L2-022. 重排链表 时间限制 500 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 给定一个单链表 L1→L2→...→Ln-1→Ln,请 ...

  4. 10-20C#基础---一维、二维数组&&冒泡排序

    一.一维数组 1.定义:是某一种数据类型的数据的组合,数组用来分组基本类型或相同类型的对象.数组中的实体叫做数组的元素或成员. 2. 格式:int[ ] shuzu=new int[ 6];存放int ...

  5. 10-13C#语句(1)

    C#语句:判断.循环.形成程序的分支和循环 1.语句分类 1)顺序语句 2)分支语句 3)循环语句 2.语句 选择控制:if,else,switch,case 循环控制:while,do,for,fo ...

  6. JavaSwing文件选择器 JFileChooser的使用

    先看效果吧! 说明:选择文件或者文件夹.本例子就直接在控制台输出文件或者文件夹的路径.实际开发中,就可以将文件或文件夹的路径封装为File的实例来使用了. package test; import j ...

  7. MongoDB中的查询

    MongoDB中文文档:http://docs.mongoing.com/manual-zh/contents.html 这里以集合名称为test为例,数据库通过for循环插入一些测试数据,键分别为: ...

  8. mahout in Action研读(1)-给用户推荐图书

    1.mahout in Action2.2第一个例子   Running a first recommender engine   数据: 第一个数字是用户ID 第二个是书的ID,第三个是用户对书的评 ...

  9. windows python-mysql 安装

    https://www.cnblogs.com/gbx-bo/p/5993190.html

  10. Webview离线功能(优先cache缓存+cache缓存管理)

    在做Webview显示服务器的html功能时 需要加入离线功能. 开始思路很狭隘,以为一定应该是从服务器得到的html文件,下载到本地后加载~ 但是这样不能离线查看图片,因为图片数据并不再html中, ...