首页 > 编程语言 >python中迭代什么意思

python中迭代什么意思

时间:2024-10-10 22:21:52浏览次数:3  
标签:__ 迭代 python 生成器 对象 意思 loop Iterable

1、迭代:

迭代是通过重复执行的代码处理相似的数据集的过程,并且本次迭代的处理数据要依赖上一次的结果继续往下做,上一次产生的结果为下一次产生结果的初始状态,如果中途有任何停顿,都不能算是迭代。例如:

(1)非迭代例子

loop = 0
while loop < 3:
    print("Hello world!")
    loop += 1

(2)迭代例子

loop = 0
while loop < 3:
    print(loop)
loop += 1

例1仅是循环3次输出" Hello world!",输出的数据不依赖上一次的数据,因此不是迭代。

2、可迭代对象(Iterable):

可迭代对象并不是指某种具体的数据类型,它是指存储了元素的一个容器对象,且容器中的元素可以通过__iter__( )方法或__getitem__( )方法访问。

(1)__iter__方法的作用是让对象可以用for ... in循环遍历,__getitem__( )方法是让对象可以通过“实例名[index]”的方式访问实例中的元素。这两个方法的目的是Python实现一个通用的外部可以访问可迭代对象内部数据的接口。

(2)一个可迭代对象是不能独立进行迭代的,Python中,迭代是通过for ... in来完成的。凡是可迭代对象都可以直接用for… in…循环访问,这个语句其实做了两件事:第一件事是调用__iter__()获得一个可迭代器,第二件事是循环调用__next__()。

3、常见的可迭代对象包括:

a.集合数据类型,如list、tuple、dict、set、str等;

b.生成器(generator),包括生成器和带yield的生成器函数(generator function)。

4、如何判断一个对象是可迭代对象呢?

可以通过collections模块的Iterable类型判断,具体判断方法如下:

from collections import Iterable
isinstance('', Iterable)  #返回True,表明字符串也是可迭代对象

标签:__,迭代,python,生成器,对象,意思,loop,Iterable
From: https://blog.csdn.net/hakesashou/article/details/142833671

相关文章

  • python3开头如何设置utf-8
    编码格式1:在源文件第一行或者第二行定义:# coding=<encoding name>例如:# coding=utf-8编码格式2:(这种最流行)格式如下:#!/usr/bin/python # -*- coding: <encoding name> -*-例如:#!/usr/bin/python # -*- coding: utf-8 -*-编码格式3:(如果使用......
  • Python 从入门到实战35(进程-multiprocessing模块)
            我们的目标是:通过这一套资料学习下来,可以熟练掌握python基础,然后结合经典实例、实践相结合,使我们完全掌握python,并做到独立完成项目开发的能力。        上篇文章我们讨论了turtle库绘制图画操作的相关知识。今天学习一下进程的概念和创建方法。1、......
  • Python 从入门到实战36(进程-Process、Pool类)
            我们的目标是:通过这一套资料学习下来,可以熟练掌握python基础,然后结合经典实例、实践相结合,使我们完全掌握python,并做到独立完成项目开发的能力。        上篇文章我们讨论了通过multiprocessing模块创建进程操作的相关知识。今天学习一下Process、Po......
  • python第一章试题集(答案全)
    第一题判断题1-1  Python语言是开源的,现拥有十几万个第三方函数库。T1-2  以下代码运行时会出错  T1-3Python中“4”+“3”的结果为“7”。F1-4下面Python程序是错误的.T1-5Python语言可以用面向对象的方法编程。T1-6Python是一种跨平台、开源、免费......
  • python 类篇
    目录2.类实例属性和类属性构造函数和self参数类方法静态方法共有私有[待补充]3.继承单继承多继承super函数MRO列表super的本质经典类和新式类4.多态C++多态的定义python多态鸭子类型5.虚函数null2.类面向对象的三个特点,封装,继承,多态。其中封装指的是将函数和数据封在一起形......
  • [档] python 多环境管理-vene
    python创建虚拟环境虚拟环境相当于单独隔离出一套独立的环境,你可以在这个环境中安装各种包,继而构建各种不同的具体的环境。类似于docker或早先的虚拟机。当有多个不同的项目,不同的项目依赖的python库或者python的不同版本,此时就可以使用多环境管理,创建虚拟环境,为不同的项目构造......
  • 链表【两数相加】具体思路——【递归】【迭代】【暴力】(附完整代码)
    文章目录前言一、问题引入,如何理解【链表】两数相加?二、方法一(固定数组暴力)三、方法二(递归法)四、方法三(迭代法)前言本文将介绍【链表】两数相加对于这一问题将采用多种思路方法来解决【暴力】【递归法】【迭代法】一、问题引入,如何理解【链表】两数相加?题目链接......
  • python 图片转icon图标
    功能分析Tkinter:用于构建简单的GUI,包括文件选择按钮、下拉菜单和生成按钮。Pillow(PIL):用于处理图像加载、调整尺寸并保存为.ico格式。功能实现:用户点击“选择图片”按钮,打开文件对话框选择图片。下拉菜单用于选择图标的尺寸(16x16到256x256)。用户点击“生成图标”按......
  • 基于yolov8、yolov5的安全帽检测系统(含UI界面、数据集、训练好的模型、Python代码)
    项目介绍项目中所用到的算法模型和数据集等信息如下:算法模型:  yolov8、yolov8+SE注意力机制或yolov5、yolov5+SE注意力机制,直接提供最少两个训练好的模型。模型十分重要,因为有些同学的电脑没有GPU,无法自行训练。数据集:  网上下载的数据集,格式都已......
  • 学习python2.0
    这两天白天都满课,傍晚才有私人时间。今天学习了5.2字符串和编码:(1)ASCII,可以编码的是英文字母,数字和一些符号。GB2312编码,可以编码中文。Unicode把所有语言都统一到一套编码里,比较方便,但是占用的存储空间大。UTF-8编码可以省空间。(2)ord()函数获取字符的整数表示,chr()......