很久就有想写python 迭代相关的东西了,但是一直不知道怎么表达让大家能够容易懂。今天我想了很长的时间,稍微理清了下思路,用
简单的语言和大家说说。
在看文章之前大家要在脑海里记下这句话:python中所有从左往右扫描对象的方式都是可迭代的。
那哪些方式是可迭代的呢:
1文件操作
2for 循环
3python 列表解析
。。。。。
看来在python里非常的多,用处也非常的广泛。
下面具体的介绍下几个:
1文件操作:
我们读取文件的时候,会用到一个readline()方法,其实它就是一个迭代器,
它会返回当前的数据,然后自动的调用内置的next()方法来让文件的读取头自动的移动到当前的下面一行,准备下次的
读取。
所以现在我们读取文件的话,完全可以用到文件的迭代器.
for i in open('1.txt'):
print i
用这样的方式来读取文件内容的话,速度很快,而且用的内存也是比较低的,特别适合操作大文件。
下面这个方式适合操作一些小的文件,速度和效率没有上面的好,所以建议以后操作文件的话,尽量用上面的。
for k in open('1.txt').readlines():
print k
这里可以看看python文件操作的相关内容。
2for 循环:
比如我们一般用for 循环来处理一些数据的话:
for i in range(3):
print i
它中间处理的过程和下面的是一样的:
>>> a = [0,1,2]
>>> info = iter(a)
>>> info.next()
0
>>> info.next()
1
>>> info.next()
2
>>> info.next()
Traceback (most recent call last):
File "", line 1, in
StopIteration
每次调用迭代器调用next()方法返回结果,并让文件指针往下移动一行,最好已StopIteration异常结束迭代。
3列表解析:
a = [i for i in range(3)]
print a
结果是[0,1,2]
它其实也用到了迭代器,
每次for 循环取得数据,把内容赋值给i让它加到列表里,然后调用next()方法移动到下条记录继续上面的步骤,到StopIteration
结束异常的迭代。
通过上面的例子,我想大家应该比较清楚python迭代的过程了。
还是记住这句话:python中所有从左往右扫描对象的方式都是可迭代的。
感觉理解好了这个,对你写python程序很多帮助。
原创文章请注明转载自老王python,本文地址:http://www.cnpythoner.com/post/83.html
作者:老王@python python 教程
老王python,提供pythn相关的django 教程和python 下载,希望大家能够喜欢
分享到:
相关推荐
在实际教学中,教师可以结合速查表(Cheat Sheet)的方式来帮助学生快速掌握关键知识点,特别是在学习Python编程和数据分析库时,速查表能够快速帮助学生回顾和掌握代码的使用。而在Excel教学环节,可以更多地强调其...
Python 深度学习:Python 基础知识点总结 引言: Python 是一种高级的解释性编程语言,广泛应用于数据科学、人工智能、深度学习等领域。Python 的基础知识点是深入学习 Python 的基础,了解 Python 的基础知识点对...
基于链接实体回放的多源知识图谱终身表示学习python源码+项目操作说明.zip >知识图谱存储大量的结构化知识和丰富的语义信息,已被广泛应用于知识驱动的智能软件.随着智能应用的不断发展,它们对知识图谱的需求也在发生...
在编程学习的道路上,编写小游戏是一种既有趣又有益的方式,能够帮助初学者巩固基础知识,提升编程思维。本文将以"吃苹果"小游戏为例,探讨如何使用Python语言来实现这样一个互动游戏,让我们一起走进Python编程的...
当编程大佬问怎么自学的时候,他其实是缺一点深度知识。 当所有人还在问怎么自学Python,学起来大概要多久的时候,已经帮你铺好了从“新手到大师”的百天进阶之路。不管是小白、熟手还是大佬都能学到东西。
以上就是“Python-基于Python实现的Linux后台日志监控小项目”的核心知识点。通过这个项目,开发者不仅可以学习到Python编程的实际应用,还能深入理解日志监控的原理和实践,提升DevOps能力。在实际操作中,可以根据...
1. 最后维护的版本:了解这一点对于仍在使用Python 2的开发者来说至关重要,因为他们需要计划迁移到Python 3以获得持续的安全更新。 2. 二进制和文本I/O:在Python 2中,文件处理默认为文本模式,而在Python 3中,...
本压缩包提供了一个使用Python语言实现的FlappyBird小游戏,让我们来深入探讨一下这个项目中的相关知识点。 首先,Python是一种高级编程语言,它以其简洁明了的语法和丰富的库资源而受到开发者喜爱。在创建Flappy...
这份"Python学习文档"提供了一个全面的教程,适合初学者和有一定经验的开发者。让我们一起深入探讨其中的关键知识点。 首先,Python解释器是运行Python代码的引擎。你可以通过命令行调用解释器,如`python`或`...
本文将基于"Python-简单快速实时可定制的机器学习音频分类器"这一主题,深入探讨相关知识点,包括Python编程、机器学习算法以及音频处理技术。 Python作为一门流行的编程语言,因其简洁易读的语法和丰富的库支持,...
基于这一点,我们可以推测文档中可能涵盖了以下Python编程的学习知识点: 1. Python基础语法:包括变量定义、数据类型、运算符、控制结构(如if语句、循环结构)、函数定义等基础内容。 2. Python高级特性:面向...
Python的特点包括它的交互式特性,这一点类似于BASIC语言,使得学习者能够很方便地进行快速原型开发,同时也适合教学和程序设计的初学者。Python不仅仅适用于小型项目,其严谨的模块和对象体系设计,使其同样能够...
这是我学python的所以收获,我很牛的一点是,我把这些知道理解运用,加记忆了。将受益匪浅。
在Python编程世界里,开发小游戏是学习编程语言的绝佳途径,因为它们可以帮助初学者理解基本的编程概念,如控制流程、对象和事件处理。这里我们关注的是两个经典的小游戏:乒乓游戏和贪吃蛇游戏。这两款游戏的源码都...
Python的`pyautogui`库可以帮助我们实现这一点。它提供了模拟鼠标点击、拖动等功能,使得程序能模拟人类玩家的操作。 4. **防检测机制** 为了防止被微信检测到异常,辅助工具需要具备一定的防检测策略。这可能包括...
Python是一种广泛使用的...通过分析和实践这两个文件,初学者可以系统地学习Python语言,逐步掌握编程技巧,为更复杂的应用开发打下坚实的基础。同时,对于有经验的开发者来说,这些资料也可以作为复习和提升的工具。
总的来说,《Hands On Transfer Learning with Python》是一本结合了深度学习、迁移学习以及Python编程的综合性学习手册,它不仅提供了技术知识,还通过实际案例帮助读者深入理解迁移学习在深度学习中的应用,让读者...
在这个过程中,你将学习到以下几个重要的Python编程知识点: 1. **基础语法**: Python的语法简洁明了,非常适合初学者入门。在编写滑雪小游戏时,你会接触到变量的声明、条件语句(如if-else)、循环结构(for和...
- **简洁优美的语法**:Python的语法结构清晰,易于学习和阅读。 - **强大的库支持**:无论是Web开发、数据科学、自动化脚本还是游戏开发,Python都有大量的库可供使用。 - **广泛的应用领域**:由于其灵活性,...
在Python深度学习领域,NumPy库扮演着至关重要的角色,它是科学计算的基础工具,提供了高效的数据操作和矩阵运算功能。本笔记将深入探讨NumPy在深度学习中的应用,特别是下篇内容,主要涵盖以下几个关键知识点: 1....