高级特性
生成器
读取生成器元素的两种方式:
•g.next()
•for循环读取; (生成器实质上是可迭代对象);
•列表生成式(列表生成式是Python 内置的非常简单却强大的可以用来创建 list的生成式), 当生成时元素即打印, 会占用内存;
[i for i in range(100)]
Fibonacci数列:
1, 1,2, 3, 5,8, 13, 21...
# 生成 fib 数列的函数, x 代表最终生成的数列元素个数;
python中两值交换
# 先构造右边的元组(y,x),即(4,3);
# 然后将元组的值依次赋给x,y;
yield关键字
# 生成 fib 数列的函数, x 代表最终生成的数列元素个数;
例1
例2
生成器实战应用: 实现生产者消费者模型(有无缓冲区)
•无缓冲区
•有缓冲区
生成器实战应用: 迷你聊天机器人
# 函数中 yield , 代表调用函数, 返回值为生成器;
# 函数中 yield , 代表调用函数, 返回值为生成器;
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有