Python在线运行

版本:

所属目录
点击了解高性能代码运行API
运行结果
教程手册
代码仓库
极速运行
终端运行
图形+终端

                        
以下是用户最新保存的代码
月球绕地球旋转3D 发布于:2025-04-03 10:30 pygame生成立方体 发布于:2025-04-02 17:51 正方体生产 发布于:2025-04-02 17:50 华为od机考1 - 简单 发布于:2025-04-02 12:13 deepseek生成一个数学动画 发布于:2025-04-02 16:23 7 特异性双端队列 发布于:2025-04-01 23:03 猜数字randint版 发布于:2025-04-01 20:51 统计中文字符的个数 发布于:2025-04-01 20:44 西藏地区数据分析 发布于:2025-04-01 16:41 打包程序的 发布于:2025-04-01 16:47 愚人节恶搞老师 发布于:2025-04-01 15:56 生成身份证号 发布于:2025-04-01 13:35 a= int(input ("请输入第一个数a=")) b= int(input ("请输入第二个数b=")) s= a*b #补充完整 print("这两个数的积是s=",s) 发布于:2025-04-01 10:47 水中浸物动画演示 发布于:2025-03-31 18:11 ##python取款机 发布于:2025-03-31 14:34 75字符统计及重排 发布于:2025-03-31 12:02 这是个什么东西 发布于:2025-03-30 13:02 爬虫代码牛逼版 发布于:2025-03-29 15:57 星空生成极光 发布于:2025-03-29 15:23 木马数字ing 发布于:2025-03-29 13:28 木马病毒ing 发布于:2025-03-29 13:18 有限状态机第一版 发布于:2025-03-28 19:41 有限状态机第二版 发布于:2025-03-28 19:40 geoJSon格式坐标系转换 python代码 发布于:2025-03-27 17:09 nfc密钥生成 发布于:2025-03-27 16:59 阿斯顿发斯蒂芬 发布于:2025-03-27 10:15 生成地铁模拟沉降数据 发布于:2025-03-26 21:40 代码运行结果,保存 发布于:2025-03-26 13:26 电费项目实验 发布于:2025-03-26 08:54 爬取网址内所有视频。 发布于:2025-03-25 21:57 统计汉字和标点符号的个数 发布于:2025-03-30 20:28 商店找钱方案 发布于:2025-03-25 20:12 数位输出程序 发布于:2025-03-25 15:54 代码展示运行 发布于:2025-03-24 23:31 我的云笔记 发布于:2025-04-02 17:27 ### BMI的计算与测量 发布于:2025-03-24 12:47 ### Black on E 发布于:2025-03-23 21:10 ### Markdown possible 发布于:2025-03-30 12:51 输出曲线图 发布于:2025-03-23 15:19 计算题生成 发布于:2025-03-23 12:34 测试使用先保存一下 发布于:2025-03-23 11:19 施工方案库 发布于:2025-03-23 11:14 成本基准S曲线图 发布于:2025-03-22 13:01 计算说明书自动更新 发布于:2025-03-22 02:12 量子车联网信誉机制 发布于:2025-03-22 00:11 弹道抛射模拟 发布于:2025-03-23 21:20 获取下载速度、上传速度和ping值(延迟)。 发布于:2025-03-21 20:23 ### Level or madam (madam or lever) 发布于:2025-03-21 20:06 获取用户代理。 发布于:2025-03-21 20:04 输出田字格 发布于:2025-03-21 17:23 [更多]
显示目录

迭代器与生成器



学习嵌入式的绝佳套件,esp8266开源小电视成品,比自己去买开发板+屏幕还要便宜,省去了焊接不当搞坏的风险。 蜂鸣版+触控升级仅36元,更强的硬件、价格全网最低。

点击购买 固件广场

Python3 迭代器与生成器


迭代器

迭代是Python最强大的功能之一,是访问集合元素的一种方式。。

迭代器是一个可以记住遍历的位置的对象。

迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。

迭代器有两个基本的方法:iter() 和 next()。

字符串,列表或元组对象都可用于创建迭代器:

>>> list=[1,2,3,4]
>>> it = iter(list)    # 创建迭代器对象
>>> print (next(it))   # 输出迭代器的下一个元素
1
>>> print (next(it))
2
>>>

迭代器对象可以使用常规for语句进行遍历:

#!/usr/bin/python3

list=[1,2,3,4]
it = iter(list)    # 创建迭代器对象
for x in it:
    print (x, end=" ")

执行以上程序,输出结果如下:

1 2 3 4

也可以使用 next() 函数:

#!/usr/bin/python3

import sys         # 引入 sys 模块

list=[1,2,3,4]
it = iter(list)    # 创建迭代器对象

while True:
    try:
        print (next(it))
    except StopIteration:
        sys.exit()

执行以上程序,输出结果如下:

1
2
3
4

生成器

在 Python 中,使用了 yield 的函数被称为生成器(generator)。

跟普通函数不同的是,生成器是一个返回迭代器的函数,只能用于迭代操作,更简单点理解生成器就是一个迭代器。

在调用生成器运行的过程中,每次遇到 yield 时函数会暂停并保存当前所有的运行信息,返回yield的值。并在下一次执行 next()方法时从当前位置继续运行。

以下实例使用 yield 实现斐波那契数列:

#!/usr/bin/python3

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()

执行以上程序,输出结果如下:

0 1 1 2 3 5 8 13 21 34 55
由JSRUN为你提供的Python在线运行、在线编译工具
        JSRUN提供的Python 在线运行,Python 在线运行工具,基于linux操作系统环境提供线上编译和线上运行,具有运行快速,运行结果与常用开发、生产环境保持一致的特点。
yout