Python for循环及用法详解
for 循环的语法格式如下:
for 迭代变量 in 字符串|列表|元组|字典|集合:
代码块
for 循环语句的执行流程如图 1 所示。

图 1 for 循环语句的执行流程图
下面的程序演示了 for 循环的具体用法:
add = "http://c.biancheng.net/python/" #for循环,遍历 add 字符串 for ch in add: print(ch,end="")运行结果为:
http://c.biancheng.net/python/
可以看到,使用 for 循环遍历 add 字符串的过程中,迭代变量 ch 会先后被赋值为 add 字符串中的每个字符,并代入循环体中使用。只不过例子中的循环体比较简单,只有一行输出语句。Python for循环的具体应用
for 循环进行数值循环
在使用 for 循环时,最基本的应用就是进行数值循环。比如说,想要实现从 1 到 100 的累加,可以执行如下代码:print("计算 1+2+...+100 的结果为:") #保存累加结果的变量 result = 0 #逐个获取从 1 到 100 这些值,并做累加操作 for i in range(101): result += i print(result)运行结果为:
计算 1+2+...+100 的结果为:
5050
有关 range() 函数的具体用法,可阅读《Python range()》一节,值得一提的是,Python 2.x 中除提供 range() 函数外,还提供了一个 xrange() 函数,它可以解决 range() 函数不经意间耗掉所有可用内存的问题。但在 Python 3.x 中,已经将 xrange() 更名为 range() 函数,并删除了老的 xrange() 函数。
for循环遍历列表和元组
当用 for 循环遍历 list 列表或者 tuple 元组时,其迭代变量会先后被赋值为列表或元组中的每个元素并执行一次循环体。下面程序使用 for 循环对列表进行了遍历:
my_list = [1,2,3,4,5] for ele in my_list: print('ele =', ele)程序执行结果为:
ele = 1
ele = 2
ele = 3
ele = 4
ele = 5
感兴趣的读者,可自行尝试用 for 循环遍历 tuple 元组,这里不再给出具体实例。
for 循环遍历字典
在使用 for 循环遍历字典时,经常会用到和字典相关的 3 个方法,即 items()、keys() 以及 values(),它们各自的用法已经在前面章节中讲过,这里不再赘述。当然,如果使用 for 循环直接遍历字典,则迭代变量会被先后赋值为每个键值对中的键。例如:
my_dic = {'python教程':"http://c.biancheng.net/python/",\ 'shell教程':"http://c.biancheng.net/shell/",\ 'java教程':"http://c.biancheng.net/java/"} for ele in my_dic: print('ele =', ele)程序执行结果为:
ele = python教程
ele = shell教程
ele = java教程
除此之外,我们还可以遍历字典 values()、items() 方法的返回值。例如:因此,直接遍历字典,和遍历字典 keys() 方法的返回值是相同的。
my_dic = {'python教程':"http://c.biancheng.net/python/",\ 'shell教程':"http://c.biancheng.net/shell/",\ 'java教程':"http://c.biancheng.net/java/"} for ele in my_dic.items(): print('ele =', ele)程序执行结果为:
ele = ('python教程', 'http://c.biancheng.net/python/')
ele = ('shell教程', 'http://c.biancheng.net/shell/')
ele = ('java教程', 'http://c.biancheng.net/java/')
编程帮,一个分享编程知识的公众号。跟着站长一起学习,每天都有进步。
通俗易懂,深入浅出,一篇文章只讲一个知识点。
文章不深奥,不需要钻研,在公交、在地铁、在厕所都可以阅读,随时随地涨姿势。
文章不涉及代码,不烧脑细胞,人人都可以学习。
当你决定关注「编程帮」,你已然超越了90%的程序员!

微信扫描二维码关注
所有教程
- 设计模式
- C语言入门
- C语言编译器
- C语言项目案例
- 数据结构
- C++
- STL
- C++11
- socket
- GCC
- GDB
- Makefile
- OpenCV
- Qt教程
- Unity 3D
- UE4
- 游戏引擎
- Python
- Python并发编程
- TensorFlow
- Django
- NumPy
- Linux
- Shell
- Java教程
- Java Swing
- Servlet
- JSP教程
- Struts2
- Maven
- Spring
- Spring MVC
- Spring Boot
- Spring Cloud
- Hibernate
- Mybatis
- MySQL教程
- MySQL函数
- NoSQL
- Redis
- MongoDB
- HBase
- Go语言
- C#
- MATLAB
- JavaScript
- Bootstrap
- HTML
- CSS教程
- PHP
- 汇编语言
- TCP/IP
- vi命令
- Android教程
- 区块链
- Docker
- 大数据
- 云计算
- 编程笔记
- 资源下载
- VIP视频
- 一对一答疑
- 关于我们