Python中有两种循环,分别为:for循环和while循环。

1. for循环

for循环可以用来遍历某一对象(遍历:通俗点说,就是把这个循环中的第一个元素到最后一个元素依次访问一次)。for循环的基本结构如下:

具体看这个案例:

设计一个函数,在桌面创建10个文本,用数字从1-10依次给它们命名。

 1 def text_create():2     path = '/Users/duwangdan/Desktop/'3     for text_name in range(1,11):4         # 1-10的范围需要用到range函数5         with open (path + str(text_name) + '.txt','w') as text:6             # with...as的用法正文内会详细介绍7             text.write(str(text_name))8             text.close()9             print('Done')
10
11 text_create()

现在我们来理解下每行代码。

第1行:定义一个text_create函数;

第2行:给变量path赋值为桌面路径;

第3行:将1-10范围内的每个数字依次装入变量text_name中,每次命名一个文件;

第5行:打开位于桌面的txt文件,并给每一个text执行写入操作;

第7行:给每个文件依次命名;

第8行:关闭文件;

第9行:执行完一次命名操作后显示一个Done;

第11行:调用函数。

案例中提到了“with...as”,在Python中,“with...as”语法是用来代替传统的“try...finally”的。

比如:打开桌面的test文件,尝试读取文件内容,最后关闭文件。

1 file = open('/Users/duwangdan/Desktop/test.txt')
2 try:
3     data = file.read()
4 finally:
5     file.close()

虽然这段代码执行良好,但比较冗长,换成用“with...as”来表达后,代码会更为简洁。

1 with open('/Users/duwangdan/Desktop/test.txt') as file:
2     data = file.read()

除了上面的单层循环之外,还有一种常见的循环,是嵌套循环

比如用嵌套循环实现九九乘法口诀。

1 for i in range(1,10):
2     for j in range(1,10):
3         print('{} X {} = {}'.format(i,j,i*j))

最外层的循环,依次将1-9的数字储存在变量i中;变量i每取一次值,内层循环就依次将1-9的数字储存在变量j中;最后打印出当前的i、j、和i*j的值。

从Python2.6开始,新增了format函数,用来格式化字符串,可以通过{}.format来实现。在上面这个案例中,将i、j、i*j的值分别存入前面的{ }中,然后做好格式化,统一形式。

2. while循环

for循环和while循环,两者的相同点在于都能循环做一件重复的事情;不同点在于,for循环是在序列穷尽时停止,while循环是在条件不成立时停止。

具体,看下面这个例子:

1 count = 0
2 while True:
3     print('重复一遍')
4     count = count + 1
5     if count == 3:
6         break

给变量count赋值为0,while True就是条件成立,显示“重复一遍”,此时count被重新赋值为count+1,如果count等于3时,跳出循环。最后一句的break是跳出最近一层的循环,如果不跳出,程序会无限制循环下去,造成死循环。

如果不想用break来跳出循环,也可以改变使循环成立的条件。

将上面的例子可转化为如下:

1 count = 0
2 while (count < 3):
3     print('重复一遍')
4     count = count + 1

转载于:https://www.cnblogs.com/wolfboy55-163-com/p/8138236.html

8.使用for循环和while循环遍历文件相关推荐

  1. 【Kotlin】循环控制流 ( for 循环 | Iterator 遍历形式 | Iterator 遍历要求 | IntArray 源码解析 )

    文章目录 一.For 循环 二.For 循环遍历 Iterator 对象 三.Iterator 遍历要求 四.IntArray 源码解析 一.For 循环 For 循环有两种遍历形式 : 一种是 遍历 ...

  2. Java中遍历数组使用foreach循环还是for循环?

    这篇文章主要介绍了Java中遍历数组使用foreach循环还是for循环?本文着重讲解for语句的语法并给出使用实例,同时总结出尽量使用foreach语句遍历数组,需要的朋友可以参考下 从JDK1.5 ...

  3. 增强for循环、Map接口遍历、可变參数方法

    增强for循环 1.for循环能做得事情.增强for循环大部分都能做(假设要想获得下标的时候就必须使用简单for循环了) 2.增强for有时候可以方便的处理集合遍历的问题,可是集合的标准遍历是使用迭代 ...

  4. Python中的用for,while循环遍历文件实例

    使用for循环遍历文件 打开文件 open r:以读模式打开 w:以写模式打开 a:以追加模式打开 r+:以读写模式打开 w+:以读写模式打开(参见w) a+:以读写模式打开(参见a) rb:以二进制 ...

  5. 使用for循环遍历文件、使用while循环遍历文件

    使用for循环遍历文件 1.打开文件读 打开文件,从头到尾读完后,再执行read()就没有了 关闭后就不能读 readlines()和readline()区别: readline() :一行一行读取, ...

  6. java collection 遍历_Java for循环对集合的遍历

    原标题:Java for循环对集合的遍历 Java集合类的使用可以说是无处不在,总的我们可以将之分为三大块,分别是从Collection接口延伸出的List.Set和以键值对形式作存储的Map类型集合 ...

  7. python遍历循环和无限循环结构_Python --- 程序的循环结构

    1.遍历循环 2.无限循环 3.循环控制保留字 4.循环的高级用法 1.遍历循环 遍历某个结构形成的循环运行方式 for in : - 从遍历结构中逐一提取元素,放在循环变量中 - 完整遍历所有元素后 ...

  8. SSIS之Foreach循环容器(文件枚举器)遍历文件(关键点 详细步骤 图文讲解)

    最近半道接手了一个项目需要使用CSVtoSQL,因为关于SSIS包这个东西是别人已经创建好了的,但不相识,所以接手后就决定自己研究一下,创建SSIS包时,在Foreach循环容器的设置上抠破脑门,网上 ...

  9. 2021-09-09【linux】丨shell使用for循环遍历文件/数组

    目录 摘要 for循环遍历文件使用方法 方法一 方法二 总结 摘要 在日常生信分析过程中,分析员或多或少会使用for循环批量处理样品或者分组.这里我简单整理一下自己常用的两种遍历方法. for循环遍历 ...

最新文章

  1. 云从完成超过18亿元新一轮融资,加快上市步伐
  2. Spring IOC 容器源码分析系列文章导读
  3. java高级用法之:调用本地方法的利器JNA
  4. python基础(part4)--语句
  5. Tomcat的默认连接器
  6. java中扫描类_java类扫描
  7. jq使用教程06_数据更新日志
  8. python自带sqlite_python内置的sqlite3模块,使用其内置数据库
  9. VUE调用高德地图之热力图
  10. ipv6转ipv4 NAT64与DNS64基本原理概述
  11. python 切片器_excel和python中的切片器列表
  12. GD2016noip获奖名单
  13. C/C++ 语言中.h文件和.c文件详细解析 引用 .c和.h文件的区别
  14. [转] Photoshop教程8000例,还能学不会吗?
  15. 一些常用的css技巧
  16. Oracle基础包之DBMS_RLS(八)
  17. android studio创建md,如何在Android Studio中设置*md文件打开方式
  18. 基于ZigBee和STM32的智能家居控制系统的设计与实现(二)
  19. CIKM 2020 | 一文详解美团6篇精选论文
  20. 应该怎样学习Unity3D

热门文章

  1. 为什么对象字面量没有名字?
  2. java线程同步的五种方法
  3. 【多线程】Java线程面试题 Top 50(转载)
  4. HTTP Status 500 - javax.servlet.ServletException: java.lang.OutOfMemoryError: PermGen space
  5. Silverlight 5.0 之前的SaveFileDialog的FilterIndex 错误
  6. 引起SQL数据库超时的问题分析及解决办法
  7. 比特币是什么,看这篇就懂了
  8. 机房墙面为什么要做保温?该怎么做?
  9. free查看可用缓存
  10. 何时开始phonics学习及配套阅读训练zz