生成器应用及知识推广
# def fn():
# print("盲僧")
# yield "瞎子"
# print("狮子狗")
# yield "辛巴"
# print("螳螂")
# yield "150斤的肥螳螂"
# print("冰晶凤凰")
# yield "冰鸟"
# g=fn()
# print(list(g))
# print(g.__next__())
# print(g.__next__())
# print(g.__next__())
# print(g.__next__())
# def fn():
# lst=[]
# for i in range (1,146):
# lst.append("英雄联盟第%s位英雄"%i)
# return lst
# # print(fn())
# def gn():
# i=1
# while i<146:
# yield "英雄联盟第%s位英雄"%i
# i=i+1
# g1=gn()
# print(g1.__next__())
# print(g1.__next__())
# print(g1.__next__())
# lst=[]
# for i in range(1,101):
# lst.append(i)
# print(lst)
# lst=["python%s"%i for i in range(1,101)]
# print(lst)
# print(["python%s"%i for i in range(1,101)])
# print(["python%s"%i for i in range(1,101)])# def fn():
# print(111)
# yield 222
# g=fn()
# g1=(i for i in g)
# g2=(j for j in g1)
# print(list(g))
# print(list(g1))
# print(list(g2))
#生成器函数
#yield与return的区别,return是返回结果停止调用;yield也是返回结果但是是分段调用
# def fn():
# print(111)
# yield 222
# print(333)
# a=yield 444
# print(a)
# print(555)
# yield 666
# g=fn()
# print(list(g))
# print(g.__next__())
# print(g.__next__())
# print(g.send(11))
#__next__()与send的区别
# 都是传给下一个值,但是send不能用于第一个,它可以给yield赋一个值,最后一个也不能传,会报错# 列表推导式:
# 列表推倒式; 最终给你的是列表
# 语法 [最终结果(变量) for 变量 in 可迭代对象]
# lst=[i for i in range(1,101)]
# print(lst)
#1-100能被3整除的数
# print([i for i in range (1,101) if i%3==0])
# #100以内能被3整除的平方
# print([i**2 for i in range (1,101) if i%3==0])
# names = [['Tom', 'Billy', 'Jefferson' , 'Andrew' , 'Wesley' , 'Steven' ,
# 'Joe'],'Alice',['Alice', 'Jill' , 'Ana', 'Wendy', 'Jennifer', 'Sherry' , 'Eva']]
# print([name for i in names for name in i if name.count('e')>=2])# 生成器表达式:
# g=(i for i in range(1,101))
# print(list(g))
# 生成器的惰性机制:
# def func():
# print(111)
# yield 222
# g = func()
# g1 = (i for i in g)
# g2 = (i for i in g1)
#
# print(list(g))#111 [222]
# print(list(g1))#[]生成器的惰性机制,若不调用不执行
# print(list(g2))#[]# 字典和集合的推导式:
# dic={'a':'b','c':'d'}
# # dic1={dic[key]:key for key in dic}
# # print(dic1)
lst=["盖伦","猴子","宝石"]
lst1=["卡特","狐狸","ez"]
print({lst[i]:lst1[i] for i in range (len(lst))})
# 关于生成器的一个面试题:
# def add(a, b):
# return a + b
# def gen():
# for r_i in range(4):
# yield r_i
# g = gen()
#
# for n in [2, 10]:#n存在两种取值,2或者10
# g = (add(n, i) for i in g) #循环两次后n=10,g=(add(n, i) for i in (add(n, i) for i in g) )
# print(list(g)) #n的取值为最后一次循环的值,代入得20,21,22,23
转载于:https://www.cnblogs.com/zhangdaye/p/9329672.html
生成器应用及知识推广相关推荐
- 【SIGIR22】使用反事实生成器来消除知识感知推荐中的虚假联系
Alleviating Spurious Correlations in Knowledge-aware Recommendations through Counterfactual Generato ...
- java毕业设计智能推荐的医药知识推广平台统Mybatis+系统+数据库+调试部署
java毕业设计智能推荐的医药知识推广平台统Mybatis+系统+数据库+调试部署 java毕业设计智能推荐的医药知识推广平台统Mybatis+系统+数据库+调试部署 本源码技术栈: 项目架构:B/S ...
- JAVA智能推荐的医药知识推广平台统计算机毕业设计Mybatis+系统+数据库+调试部署
JAVA智能推荐的医药知识推广平台统计算机毕业设计Mybatis+系统+数据库+调试部署 JAVA智能推荐的医药知识推广平台统计算机毕业设计Mybatis+系统+数据库+调试部署 本源码技术栈: 项目 ...
- Java毕设项目智能推荐的医药知识推广平台统(java+VUE+Mybatis+Maven+Mysql)
Java毕设项目智能推荐的医药知识推广平台统(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilde ...
- 报表生成器的必备知识,及报表主流软件
报表生成器,是面向业务用户的.用于创建报表的工具.市场上有许多报告生成器,大多是基于java web实现的工具.什么是报表生成器产品?报表生成器如何生成报表?本文来介绍报表生成器的必备知识,及报表主流 ...
- 异步解耦_如何使用异步生成器解耦业务逻辑
异步解耦 Async generators are new in JavaScript. They are a remarkable extension. They provide a simple ...
- 再谈迭代器,生成器,yield,及和类的使用
最近写项目时,遇到类嵌套和yield的混合使用,觉得比较典型,正好借此加深对迭代器和生成器的理解. 代码 代码抽象如下: from types import FunctionTypeclass Row ...
- 联邦知识蒸馏概述与思考(续)
关注公众号,发现CV技术之美 前文([科普]联邦知识蒸馏概述与思考)提到知识蒸馏是一种模型压缩方法,通过利用复杂模型(Teacher Model)强大的表征学习能力帮助简单模型(Student Mod ...
- Python迭代器和生成器详解(包括yield详解)
文章目录 一.迭代器 1. 可迭代对象(Iterable) 2. 迭代器对象(Iterator) 3. for 循环原理 4. 迭代器的优缺点 二.生成器 1. yield 原理 2. yield 和 ...
- 心肺复苏,“星火急救”推广三年,也是深圳民生微实事项目
2019独角兽企业重金招聘Python工程师标准>>> [中国公益在线深圳讯](记者张强 林丽芬)8月14日07:03,一位60多岁的退休教师在清华大学东操场晨跑时晕倒,同场晨跑的李 ...
最新文章
- 重磅!2021年全球高被引科学家名单出炉!
- 凡夫怎么可能揣度圣者的境界
- 互联网协议 — HTTPS 安全的超文本传输协议
- 虚拟桌面模拟查找点击自绘控件
- C语言的本质(35)——共享库
- 百度吴恩达:图像和音视频搜索是人工智能新方向
- 普通的101键盘在Mac上的键位对应
- 0074 几道面试题
- Linux的实际操作:用户管理(查看用户和组的配置文件/etc/passwd /etc/group /etc/shadow)
- 拥抱创新,持续探索——对话阿里云MVP胡逢法
- slf4j+logback 日志
- Redis 6.0 新特性概览
- Thinkphp查询数据转成layui的展示格式
- java 3500_学java开发3500价位的笔记本该侧重那些方面?
- Python 的解释器
- 利用动态图层实现数据的实时显示
- ai人工智能_毕竟人工智能可能不适合您
- JSON格式输出Struts2
- 织梦mysql安装教程视频教程_dedecms织梦模板安装教程视频/图文步骤(模板秀出品)...
- IDL处理葵花8Himawari-8标准HSD数据——制作大气校正数据集(卫星角度数据)
热门文章
- 「代码随想录」123.买卖股票的最佳时机III【动态规划】力扣详解!
- 如何在使用 Spotify 时更好地保护您的隐私?
- iOS开发之33 款主宰 2017 iOS 开发的开源库
- macOS中7个隐藏的技巧
- 前端文档汇总(觉得对您有用的话,别忘了给点个赞哦 ^_^ !) 1
- java.lang.IllegalStateException: Async support must be enabled on a servlet and for all filters invo
- 四级数据中心认证机构更新标准全新上线
- 问题集录--新手入门深度学习,选择TensorFlow 好吗?
- paper 88:人脸检测和识别的Web服务API
- 递归+分治+贪心+动态规划