吴裕雄--天生自然 PYTHON3开发学习:迭代器与生成器
2024-08-24 13:28:42
list=[1,2,3,4]
it = iter(list) # 创建迭代器对象
for x in it:
print (x, end=" ")
import sys # 引入 sys 模块 list=[1,2,3,4]
it = iter(list) # 创建迭代器对象 while True:
try:
print (next(it))
except StopIteration:
sys.exit()
class MyNumbers:
def __iter__(self):
self.a = 1
return self def __next__(self):
x = self.a
self.a += 1
return x myclass = MyNumbers()
myiter = iter(myclass) print(next(myiter))
print(next(myiter))
print(next(myiter))
print(next(myiter))
print(next(myiter))
class MyNumbers:
def __iter__(self):
self.a = 1
return self def __next__(self):
if self.a <= 20:
x = self.a
self.a += 1
return x
else:
raise StopIteration myclass = MyNumbers()
myiter = iter(myclass) for x in myiter:
print(x)
import sys def fibonacci(n): # 生成器函数 - 斐波那契
a, b, counter = 0, 1, 0
while True:
if (counter > n):
return
yield a
a, b = b, a + b
counter += 1
f = fibonacci(10) # f 是一个迭代器,由生成器返回生成 while True:
try:
print (next(f), end=" ")
except StopIteration:
sys.exit()
最新文章
- 提交按钮ajax方式
- Guacamole之配置Guacamole(五)
- 实验:sigsuspend(),sigprocmask()
- android中几种常见的尺寸
- Oracle case用法
- Linux上的设备管理器
- Sql去重
- 关于《Web接口开发与自动化测试--基于Python语言》
- js实现一个简单的登录页面
- 开放标准-http://www.open-std.org/
- linux系统命令大全
- Shell命令的执行顺序
- bzoj1030【JSOI2007】文本生成器
- FastDFS分布式文件系统配置文件详解
- 【API】遍历进程的几种方式
- SCU 4444: Travel(最短路)
- C++primer 练习4.31-4.35
- DevOps Workshop 研发运维一体化(北京第二场) 2016.04.27
- linux下实现压测-html报表生成-控制台参数优化【jmeter】
- WPF 同一个程序 只允许 同时运行一个
热门文章
- Pycharm2020最新激活码|永久激活(附最新激活码和插件)
- LeetCode 124. Binary Tree Maximum Path Sum 二叉树中的最大路径和 (C++/Java)
- UVALive 4731 dp+贪心
- [CISCN2019 总决赛 Day2 Web1]Easyweb
- POJ 2006:Litmus Test 化学公式
- 新iPhone要推出双卡双待这事是真的吗?
- JSP变量、方法和类的声明,JSP程序片,JSP表达式
- PHP SeasLog实现高性能日志记录
- 简单模拟B1011
- python刷LeetCode:1.两数之和