第二模块学习:  生成器,迭代器,内置函数

生成器特点:只有在调用时才会生成相应的数据,运行的速度快!

示例:

 def fil(max):#斐波那契数
n,a,b=0,0,1 #定义初始数据 while n<max:
yield b
a,b=b,a+b #进进第二次的赋值
n+=1 return '---deno----' a=fil(10)
while True:
try:
print(a.__next__())#打印返回值
except StopIteration as e:#异常返回
print('XXXXXX',e.value)
break

yield  生成器断点缓存 可赋于变量

.send()可以为yield 传值、数据

示例:

 #利用生成器 可形成多并发
#
name_1='销售点A'
name_2='销售点B'
name_sc='大丰厂'
yf='衣服' def a(name):
print("产品%s………准备完毕………"%name)
while True:
doc=yield#生成器断点缓存
print('%s在销售\033[32;1m%s\033[0m'%(name,doc))#传入打印出来 # c=a('销售点A')
# c.__next__()#首次运行加载 doc
# yf='衣服'
# c.send(yf)
# c.__next__()
# c.__next__()
# c.__next__()
def b(name):
print("产品%s………准备完毕………"%name)
while True:
doc=yield#生成器断点缓存
print('%s在销售\033[32;1m%s\033[0m'%(name,doc))#传入打印出来 def sc(name):#生产产家 c=a(name_1)
d=b(name_2)
c.__next__()#首次加载
d.__next__()
print('%s开始生产了…………'%name)
for x in range(10):
print('生产了%s件%s'%((x+1)*2,yf))
c.send(yf)
d.send(yf) sc(name_sc)

迭代器:Iterator

  可以返回下一个值的迭代对象,就可以称为迭代器

迭代对象:Iterable

  可以被for循环的对象,如列表,字典,字符串等,可以称为迭代对象!

iter() 可以将迭代对象转化有迭代器

生成器属于迭代器中的一种

内置函数:

 abc(i)#返回绝对值
all()#当可迭代对象值都为真时才返回真
any()#当可迭代对象值有一个为真时就返回真
ascii()#可以将列表转为ascii表对应的字符串输出
bin()#十进制转二进制………………
 #计算1+1到100的值

 #return 返回

 def test(num):

     i=1
sumresult = 0
while i<=num:
sumresult = sumresult + i
i+=1
return sumresult result = test(100)
print ('resolt = %d'%result)

return 返回

 #计算1+1到100的值

 #return 返回

 def test2(num):

     if num>=1:
result = num + test2(num-1)
else:
result = 0
return result result = test2(100)
print ('result = %d'%result)

#计算1+1到100的值

 #计算1+1到100的值

 # return 返回

 def test3(num):
if num>=1:
result =num * test3(num-1)
else:
result =1
return result result = test3(4)
print ('result = %d'%result)

#计算1+1到100的值

python第十二天 生成器,迭代器,内置函数的更多相关文章

  1. Python学习(八) —— 内置函数和匿名函数

    一.递归函数 定义:在一个函数里调用这个函数本身 递归的最大深度:997 def func(n): print(n) n += 1 func(n) func(1) 测试递归最大深度 import sy ...

  2. python基础12_匿名_内置函数

    一个二分查找的示例: # 二分查找 示例 data = [1, 3, 6, 7, 9, 12, 14, 16, 17, 18, 20, 21, 22, 23, 30, 32, 33, 35, 36, ...

  3. 【python】dir(__builtins__)查看python中所用BIF(内置函数)

    dir(__builtins__)查看python中所用BIF(内置函数)

  4. 查看python内部模块命令,内置函数,查看python已经安装的模块命令

    查看python内部模块命令,内置函数,查看python已经安装的模块命令 可以用dir(modules) 或者用 pip list或者用 help('modules') 或者用 python -m  ...

  5. python基础--迭代器、生成器、内置函数、面向对象编程

    迭代器:迭代器对象从集合的第一个元素开始访问,直到所有的元素都被访问完结束.迭代器只能往前不会后退 迭代:更新换代(重复)的过程,每次的迭代都必须基于上一次的结果 迭代器:迭代取值的工具 使用迭代器的 ...

  6. python 全栈开发,Day14(列表推导式,生成器表达式,内置函数)

    一.列表生成式 生成1-100的列表 li = [] for i in range(1,101): li.append(i) print(li) 执行输出: [1,2,3...] 生成python1期 ...

  7. Python装饰器、生成器、内置函数、json

    这周学习了装饰器和生成器,写下博客,记录一下装饰器和生成器相关的内容. 一.装饰器 装饰器,这个器就是函数的意思,连起来,就是装饰函数,装饰器本身也是一个函数,它的作用是用来给其他函数添加新功能,比如 ...

  8. python学习笔记(五):装饰器、生成器、内置函数、json

    一.装饰器 装饰器,这个器就是函数的意思,连起来,就是装饰函数,装饰器本身也是一个函数,它的作用是用来给其他函数添加新功能,比如说,我以前写了很多代码,系统已经上线了,但是性能比较不好,现在想把程序里 ...

  9. python之装饰器、生成器、内置函数、JSON

    一.装饰器: 装饰器,器在这里的意思是函数,也就是装饰函数.作用是给其他函数添加新功能,它可以不改变原有的函数,原来的函数和原来一模一样,什么都不需要改变,只需要在函数外部加上调用哪个装饰器就可以了, ...

  10. python学习笔记(四):生成器、内置函数、json

    一.生成器 生成器是什么?其实和list差不多,只不过list生成的时候数据已经在内存里面了,而生成器中生成的数据是当被调用时才生成呢,这样就节省了内存空间. 1. 列表生成式,在第二篇博客里面我写了 ...

随机推荐

  1. linux中一些简便的命令之wc

    wc命令是统计文本中的字符数.单词数以及文本行数的,具体参数如下: -l 统计文本中的行数 -w 统计文本中的单词数 -c/m 统计文本中的字符数 -L 统计文本中最长行的字符数 当然使用时也可以不带 ...

  2. 使用 Notification API 开启浏览器桌面提醒

    Notifications API 允许网页控制向最终用户显示系统通知 —这些都在顶级浏览上下文视口之外,因此即使用户已经切换标签页或移动到不同的应用程序,也可以显示.该API被设计成与不同平台上的现 ...

  3. js禁止鼠标右键功能

    1.禁止指定元素 document.getElementById("active-intro").oncontextmenu = function () { event.retur ...

  4. 从零开始学 Web 之 Ajax(七)跨域

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  5. Hadoop2源码分析-YARN 的服务库和事件库

    1.概述 在<Hadoop2源码分析-YARN RPC 示例介绍>一文当中,给大家介绍了YARN 的 RPC 机制,以及相关代码的演示,今天我们继续去学习 YARN 的服务库和事件库,分享 ...

  6. zabbix 自定义监控项简单案例

    例如:获取被监控主机的登录用户数 以uptime为例: 输入命令:uptime | awk '{print $6}'  可以获得当前登录用户数(不通终端打印出的位置不同) 1.被监控主机修改zabbi ...

  7. 使用com.aspose.words将word模板转为PDF乱码解决方案(window下正常)

    最近在做电子签名过程中,需要将合成的电子签名的word文件(正常)转换为pdf文件时,在开发平台window下转换没有问题,中文也不会出现乱码.但是将项目部署到正式服务器(Linux)上,转换出来的p ...

  8. hexo自动部署到git、ftp(虚拟主机等)、云服务器的方式

    自动部署很有用,当你写完文章后,直接使用hexo d就可以自动更新你的网站了 部署到git 首先你需要在你的blog下安装git deployer插件:npm install hexo-deploye ...

  9. css中的float属性以及清除方法 (2011-09-03 17:36:26)

    CSS里面的浮动属性是布局的常用工具,只有真正了解它并熟练使用才能将它的优点发挥到极致. 许多页面中都有文字绕图效果,并且各区块分布得错落有置,很多朋友在自学CSS布局时为了做出这些效果往往会被div ...

  10. ExtJS中xtype一览

    基本组件: xtype Class 描述 button Ext.Button 按钮 splitbutton Ext.SplitButton 带下拉菜单的按钮 cycle Ext.CycleButton ...