『Python基础-7』for循环 & while循环
『Python基础-7』for循环 & while循环
目录:
- 循环语句
- for循环
- while循环
- 循环的控制语句: break,continue,pass
- for...else 和 while...else
1. 循环语句
循环这种概念很重要,因为它是让计算机自动完成重复工作的常见方式之一。
编程语言提供了各种控制结构,允许更复杂的执行路径。
循环语句允许我们执行一个语句或语句组多次
在Python中,有两种循环: for循环 和 while循环:
- 两者的相同点在于都能循环做一件重复的事情;
- 不同点在于,for循环是在序列穷尽时停止,while循环是在条件不成立时停止。
2. for循环
在Python中 for循环可以遍历任何序列的项目,如一个列表或者一个字符串等。
遍历 - 对每个元素执行相同的操作,通俗点说,就是把这个循环中的第一个元素到最后一个元素依次访问一次.
- for循环的流程图:

- for循环的基本结构如下:
for 临时变量 in 列表或者字符串等可迭代对象:
循环满足条件时执行的代码
for...in 是Python程序员使用最多的语句,for 循环用于迭代容器对象中的元素,这些对象可以是列表、元组、字典、集合、文件,甚至可以是自定义类或者函数,例如:
- 作用于列表
- 作用于元组
- 作用于字符串
- 作用于集合
- 作用于字典
- 作用于文件
代码:
# 1.for循环遍历列表
Fruits=['apple','orange','banana','grape']
for fruit in Fruits:
print(fruit)
print("结束遍历")
# 2. 遍历字符串
for str in 'abc':
print(str)
# 3. 遍历字典:
for key,value in {"name":'Kaina',"age":22}.items():
print("键---"+key)
print("值---"+str(value))
# 4. 遍历文件
for content in open("D:\\test.txt"):
print(content)
for循环和range
for x in range(1,5):
print(x)
print("注意:打印0-5的范围内的数,不会包括5")
for x in range(1,5,2):
print(x)
print(1)
print("三个参数:起始位置(默认0),结束位置(不包含),步长(默认为1,可以为负数)")
for x in range (5,1,-2):
print(x)
3. While 循环语句
while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。
执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。
当判断条件假false时,循环结束。
执行流程图如下:

while循环的基本结构如下:
while 条件:
条件满足时,做的事情1
条件满足时,做的事情2
条件满足时,做的事情3
...(省略)...
例:
i = 0
while i < 5:
print("当前是第%d次执行循环" % (i + 1))
print("i=%d" % i)
I+=1
运行结果:
当前是第1次执行循环
I=0
当前是第2次执行循环
I=1
当前是第3次执行循环
I=2
当前是第4次执行循环
I=3
当前是第5次执行循环
I=4
无限循环(死循环)
我们可以通过设置条件表达式永不为False达到无限循环,例如:
#1.死循环
I=1
while I<9:
print(str(i)+"只羊")
#2.使用一个自增变量来约束条件
I=1
while I<4:
print(str(i)+"只羊")
# 需要一个变量来约束while中的条件
I+=1
- 可以使用CTRL +C退出当前的无限循环。
- 无限循环在服务器上客户端的实时请求非常有用。
4. 循环语句的控制语句: break, continue, pass
continue:当前这次的循环跳出,继续下一个循环
break:跳出当前整个循环
pass: 空操作,pass表示站位,后面的代码(else之前)还是会执行
在while循环中使用break关键字
I=0
while True:
I+=1
if i==10:
break
#print("此内容无法打印!")
print("循环的次数为:"+str(i))
运行结果:循环的次数为:10
说明:使用break关键字,不在执行余下的代码并退出整个循环。
在while循环中使用continue关键字:
number=0
while number<10:
number+=1
if number%2==0:
continue
print(number)
在while循环中使用pass关键字:
n = 1
while n<11:
if n == 7:
pass
else:
print (n)
n += 1
5. for...else 和 while..else
循环语句可以有 else 子句,它在穷尽列表(以for循环)或条件变为 false (以while循环)导致循环终止时被执行,但循环被break终止时不执行。
for...else
在 python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。
for num in range(10,20): # 迭代 10 到 20 之间的数字
for i in range(2,num): # 根据因子迭代
if num%i == 0: # 确定第一个因子
j=num/i # 计算第二个因子
print '%d 等于 %d * %d' % (num,i,j)
break # 跳出当前循环
else: # 循环的 else 部分
print num, '是一个质数'
运行结果:
0 等于 2 * 5
11 是一个质数
12 等于 2 * 6
13 是一个质数
14 等于 2 * 7
15 等于 3 * 5
16 等于 2 * 8
17 是一个质数
18 等于 2 * 9
19 是一个质数
while...else
在Python的while循环中会有whlie...else语句,其else语句只有在while正常结束时才会被执行,如果while循环被break语句结束,是不会执行else语句的。
即,在 python 中,while … else 在循环条件为 false 时执行 else 语句块:
var = 6
while var > 0:
var = var -1
if var == 3: # 变量为 3 时跳过输出
break
print ('当前变量值 :', var)
else:
print("Good bye!")
执行结果:
当前变量值 : 5
当前变量值 : 4
『Python基础-7』for循环 & while循环的更多相关文章
- 『Python基础-11』集合 (set)
# 『Python基础-11』集合 (set) 目录: 集合的基本知识 集合的创建 访问集合里的值 向集合set增加元素 移除集合中的元素 集合set的运算 1. 集合的基本知识 集合(set)是一个 ...
- 『Python基础-10』字典
# 『Python基础-10』字典 目录: 1.字典基本概念 2.字典键(key)的特性 3.字典的创建 4-7.字典的增删改查 8.遍历字典 1. 字典的基本概念 字典一种key - value 的 ...
- 『Python基础-8』列表
『Python基础-8』列表 1. 列表的基本概念 列表让你能够在一个地方存储成组的信息,其中可以只包含几个 元素,也可以包含数百万个元素. 列表由一系列按特定顺序排列的元素组成.你可以创建包含字母表 ...
- 『Python基础-12』各种推导式(列表推导式、字典推导式、集合推导式)
# 『Python基础-12』各种推导式(列表推导式.字典推导式.集合推导式) 推导式comprehensions(又称解析式),是Python的一种独有特性.推导式是可以从一个数据序列构建另一个新的 ...
- 『Python基础-9』元祖 (tuple)
『Python基础-9』元祖 (tuple) 目录: 元祖的基本概念 创建元祖 将列表转化为元组 查询元组 更新元组 删除元组 1. 元祖的基本概念 元祖可以理解为,不可变的列表 元祖使用小括号括起所 ...
- 『Python基础-6』if语句, if-else语句
# 『Python基础-6』if语句, if-else语句 目录: 条件测试 if语句 if-else语句 1. 条件测试 每条if语句的核心都是一个值为True或False的表达式,这种表达式被称为 ...
- 『Python基础-5』数字,运算,转换
『Python基础-5』数字,运算,转换 目录 基本的数字类型 二进制,八进制,十六进制 数字类型间的转换 数字运算 1. 数字类型 Python 数字数据类型用于存储数学上的值,比如整数.浮点数.复 ...
- 『Python基础-4』字符串
# 『Python基础-4』字符串 目录 1.什么是字符串 2.修改字符串 2.1 修改字符串大小 2.2 合并(拼接)字符串 2.3 使用乘号'*'来实现字符串的叠加效果. 2.4 在字符串中添加空 ...
- 『Python基础-3』变量、定义变量、变量类型、关键字Python基础-3』变量、定义变量、变量类型、关键字
『Python基础-3』变量.定义变量.变量类型.关键字 目录: 1.Python变量.变量的命名 2.变量的类型(Python数据类型) 3.Python关键字 1. Python 变量.变量的命名 ...
随机推荐
- Web博文目录
前言 博客写的多了,自己翻起来也费劲,这里就进行一下整合. 以前设想自己做DBA,做运维,没想到最后还要走开发这条路,干一行就爱一行...学的扎实点,工作起来也会轻松.—— 送给奋斗的自己 1 Jav ...
- python 生成器&迭代器
列表生成式 要生成[1x1, 2x2, 3x3, ..., 10x10]>>> [x * x for x in range(1, 11)]for循环后面还可以加上if判断>&g ...
- php大文件上传失败的原因及解决方法
为什么上传大文件总是失败,上传小文件就没有问题.关于PHP大文件上传失败的原因及解决方法如下: 第1种情况:文件上传时存放文件的临时目录必须是开启的并且是 PHP 进程所有者用户可写的目录.如果未指定 ...
- [原]Ubuntu 下安装Mongodb
Mongodb是一款开源的数据库,这里不用我多说了,下面说一下Ubuntu下安装Mongodb可能遇到的问题和解决方案. 故事背景: 今天M$促销,1¥Windows Azure 4000¥-30天的 ...
- hive 的一个小问题
hive查询语句中如果包含中文,如like '%奥巴马%' ,并且所查hive表中的数据是utf-8的,可能会查不出正确结果. 原因可能是系统环境的LANG 设置不是utf-8,需要把环境变量LANG ...
- calcurse 日程管理软件
包括有命令行与界面操作两部分: 命令行操作: 1.显示所有的 appointment and events root@zsf:/etc# calcurse -a09/15/13: - 21:35 -& ...
- D3——散点图Scatterplot
散点图 //Width and height ; ; ; var dataset = [ [, ], [, ], [, ], [, ], [, ], [, ], [, ], [, ], [, ], [ ...
- Spring Framework5.0 学习(4)—— 基本概念
1.0 控制反转(IOC)/依赖注入(DI) 通过依赖注入(DI),对象的依赖关系将由负责协调系统关系中各个对象的第三方组件在创建对象是设定.对象无需自行创建或管理它们的依赖关系——依赖关系将被自动 ...
- bzoj2816 [ZJOI2012]网络
Description http://www.lydsy.com/JudgeOnline/upload/zjoi2012.pdf 正解:$link-cut \ tree$. $LCT$板子题,直接维护 ...
- 九.mysql数据库多实例安装mysqld_multi [start,stop,report]
经常应为系统硬件短缺,导致需要在同一台硬件服务器上面安装多个mysql实例.之前的文章四·安装mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz(基于Centos7源码 ...