Python流程控制的 for、 while、循环和嵌套词汇continue、break、range

简介:

本章 内容 含有 python的流程控制

循环使用语法  For   while

嵌套 语法 Contitune breck


循环语法

Python中 循环语法有 for 、  while

他们都是实现 一个 同一个目的,当有一段程序,我希望反复执行的时候,就会用到 这两个循环。

For语法

For循环是有 循环次数的,取决于 提取元素的序列,按照元素出现的顺序送代任何序列 (列表或者字符串)

比如说 字符串 就是 序列 ,比如 定义好一个 hello,它的序列就是5次, for 循环 理论是来讲都是有 循环次数的,你的数无穷大的话,都是有循环次数的


For语法

For 送代变量 in 序列:

代码块

 

             range()

For  in : 是固定的循环格式

For 表示 要开始循环  迭代变量逐级从 序列里取值

每取一个序列然后 执行代码块,从序列里 值 取浄了 这个循环 就执行结束


For 例子


1
2
  for td in ('power off'):
      print(td)


表达含义

 For 循环 迭代变量 td power off 字符串 序列

把 td 打印 出来 ,看下I 取的什么值

是先 取出 第一个值

然后在取最后一个值 f 没有了,for 循环就这样结束了


运行结果

1
2
3
4
5
6
7
8
9
p
o
w
e
r
  
o
f
f




如果为了 单纯控制 循环次数 ,任何值都可以

任何值 例子

1
2
for w in ('233456'):
      print('今天学校停电')


表达含义

For 送代变量 w   字符串序列 一共为6位

打印什么都是随意的

W 从后面取值的过程只是用来控制循环的次数

从 字符串 序列中取值为6位

运行了6次 打印内容


运行结果

1
2
3
4
5
6
今天学校停电
今天学校停电
今天学校停电
今天学校停电
今天学校停电
今天学校停电





如果只是为了 循环 次数 那么不需要 用其它词的个数序列 来表达了

这里 就会用到 一共 内置函数 range() 会自动生产 一个等差级 数值链表


内置函数range()

 

range例子

1
2
or y in range (5):
      print(y)


表达含义

For 循环 y 这个送代变量调用内置函数range(5)


运行结果

1
2
3
4
5
0
1
2
3
4




range 可以快速 生成一共 被提取的序列

range还可以生成制定区间的值

range 指定数字开始并指定不同的增量(甚至可以是复数;跟布长值一个概念)

 

在有人在迭代取值的时候它会生成值,这种现象 叫做 生成器

range函数可以用于 循环的 时候 想循环几次 ,那就生成几 ,可直接拿来用。


用range 快速生成例子


1
2
for qxq in range (3):
      print('是range函数调用我的=。=')


表达含义

for 循环 qxq 调用 range函数


运行结果

1
2
3
是range函数调用我的=。=
是range函数调用我的=。=
是range函数调用我的=。=



range 还有一种 高级的用法 ,可以指定 生成的范围。


range例子


1
2
for p in range (1,5):
      print(p)


表达含义

For 循环 送代函数 p 内置函数range调用(1,5)

表示起始值为 1 结束值为5,但不包含结束值

这个概念和切片差不多。


运行结果

1
2
3
4
1
2
3
4




range 运用 步长值 例子


1
2
for p in range (1,10,2):
      print(p)


表达含义

For 循环 p 调用 range 语句(1,10,2)起始值为1 结束值为2,每隔两个取个值

和 切片的概念差不多,步长值为2,每隔两个取一个值。


运行结果

1
2
3
4
5
1
3
5
7
9



概括

For 既可以从 序列当中取出值 ,也可以打印 也可以依据序列里面值的个数 ,执行多少次循环,从序列当中取值的过程 叫做 遍历 for循环通常都是有次数的循环,循环过程当中都是从序列中取值,可以加以利用,也可以不用。

如果不需要序列里面值的时候一般都用range,如果用到里面值了,可以取出来下面接着用。





While语法

While语法

While 条件:

       代码块



一般需要 一个 一直 执行的程序,直到用户 要求退出了 才退出的 程序,这个时候就要用到wihle 循环。

While 循环 有点像 把 for循环 if 循环 做了一个集合

 

根据一个条件来判断 是否继续 循环

 

条件成立就执行

条件不成立才会结束

While循环有个问题如果条件一直无法不成立就会成为一个死循环。



While 例子

一个while 基本方式


1
2
3
a = 'b'
while a != '金牌讲师 大司马':
     a = input ('我就不喊你哼╭(╯^╰)╮我是铁头娃:')


表达含义

a = b 为了让 a 语句成立

while判断 条件 a 不等于 字符串 内容 金牌讲师大司马 成立。就会一直执行

执行代码块内容 a = input('内容 自定义') 用input 是为了跟用户产生一个交互

input 还带 打印 功能 只要用户输入的一直成立,就会一直执行,直到不成立



运行结果

1
2
3
4
5
我就不喊你哼╭(╯^╰)╮我是铁头娃:我头铁
我就不喊你哼╭(╯^╰)╮我是铁头娃:皮的嘛,就不谈了
我就不喊你哼╭(╯^╰)╮我是铁头娃:我错了
我就不喊你哼╭(╯^╰)╮我是铁头娃:金牌讲师 大司马
>>>

 



如果你想执行死循环的话

那就执行while = 1

如果不想 执行 死循环的话 ,就必须在while循环当中 设置某种机制然后可以解除while循环、

比如break等类似跳出 语句循环的 才会终止


死循环例子


1
2
while 1 :
      a = input ('这是个死循环哦~~~~~:')


表达含义

While 1代表一个 常量表达式,它永远不会= 0,所以循环会一直执行下去。

这里 a 不管输入什么 都判断为真


运行结果

1
2
3
4
5
6
这是个死循环哦~~~~~:ha
这是个死循环哦~~~~~:我要出去
这是个死循环哦~~~~~:德玛西亚万岁
这是个死循环哦~~~~~:一切都是为了荣耀
这是个死循环哦~~~~~:麻利麻利哄
这是个死循环哦~~~~~:我绝望了




嵌套 语句 Contitune breck

嵌套和循环控制 都是跟  if for while相关的知识。


嵌套可以实现千变万化的 功能 ,可能你只用 if for while  可能无法达成 某个功能的时候。或者 发现  某个 if for 循环这个时候 ,要根据 某个条件 完成某件 事情,这个时候 就要用到 嵌套了。

 

嵌套浅意  ==  在一个语法结构 当中 涵盖了 另一个 语法结构,可以任意组合。


在嵌套环境下,要注意 语句缩进   因为完全是根据缩进来 选择 优先 执行的

在里面 判断是否 属于 for 循环的 还是 if的,完全是由缩进来决定了,

在嵌套环境下 不只是 判断4个空格了。但是主题语句结构还是4个空格,

跟你当前的 语句是有关系的


 

嵌套

 

For 送代变量 in 序列:

If 条件

    代码块

代码块

 

还是那句话,语法结构 本生 并不复杂, 复杂的是人的 想法。

 

for 嵌套 if 的例子


1
2
3
for i in range(18): #for 循环 i in带入 并且用 内置函数 range 生成一个等差级数链表 0 ~18 
     print(i)        #打印出i
     if i > 5:       # if 判断如果 i > 5

 

表达含义

先执行循环 for的 range 内置函数等差数链表0~18,

从0开始

打印出 i

If判断 一直到 6 成立了。才会执行 if里面的语句。i * 10

If 结束后 继续执行for循环 未执行完的语句。


运行结果

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
0
1
2
3
4
5
6
60
7
70
8
80
9
90
10
100
11
110
12
120
13
130
14
140
15
150
16
160
17
170

 

 


语法层次的例子


1
2
3
4
for i in range (18):
     if i > 5 :
         print(i*10)
     print(i)


表达含义

For 的打印 放在最后

先不成立 会一直打印 for 循环的语句

成立后 先 执行 if 语句 在执行 for循环的打印


运行结果

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
0
1
2
3
4
5
60
6
70
7
80
8
90
9
100
10
110
11
120
12
130
13
140
14
150
15
160
16
170
17







下面 介绍的 是基本的 嵌套,嵌套有很多功能,具体 做什么 都是根据实际的需求


介绍 三个 嵌套控制 里面的 重要 组成部分

共有 控制 循环 嵌套

如果 要把 嵌套代码 修改 ,让它 在 第 5次或者,第6次的时候 停止循环,跳出循环,

不执行循环嵌套, 这个时候 就要 用到 控制 循环。

 


简要说明 下 continue 和 breck 的使用 方法 简介

Continue作用: 用来跳出下面余下的代码,紧接着执行下一次迭代取值。从它往下都不执行

Bareck的作用: 跳出当前循环 结束当前整个循环。



 continue 例子


1
2
3
4
5
for i in range (10):
     if i == 5 :
         print(i*10)
         continue
     print (i)


表达简易

For 判断 i 用内置函数 range 生产一个 等差级数列表, 打印0~10

If 判断 i如果 i完全等于 5 这个整数的时候

If判断成立 打印 i *10

执行if语句的 Continue 不会结束循环,跳过本次循环

被上面的 continue 跳过了 本次 循环 就不会打印5了


运行结果

1
2
3
4
5
6
7
8
9
10
11
0
1
2
3
4
50
5
6
7
8
9




Break的作用: 跳出当前循环 结束当前整个循环。


break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。

break语句用在whilefor循环中。

如果您使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。


Breck例子


1
2
3
4
5
6
while 1 :
     a = input ('执行一个循环然后引用baeak停止:')
    
  
     if  a == 'no':
         break

 

表达简易

 while 1   表达一个 常量表达式,它永久不会 = 0,所以循环 会一直 执行下去。除非设置 break 等类似 跳出 语句循环的 才会终止

 

a  = 输入 一句话 input 输入 具有打印 作用

 

if 判断 a 如果全等于 字符串 no

 

执行 break 跳出 当前循环 结束当前整个循环


运行结果

1
2
3
4
执行一个循环然后引用baeak停止:23333
执行一个循环然后引用baeak停止:emmmm
执行一个循环然后引用baeak停止:no
>>>



混合嵌套例子


1
2
3
4
5
6
7
8
9
for a in range (15):
     if a == 5:
         print(a-2)
         continue
    
     if a == 13 :
         print(a)
         break
print (a)


表达含义

For 循环 a 送代变量 调用 内置函数range 送代变量

先if 判断 a 如果完全等于 5

成立 执行代码块内容

等于 5的 时候 -2

Continue 跳出余下代码块 执行下一次循环

if 判断 a 如果完全 等于 13

成立 执行 代码块 内容 打印 这个值

Break 结束当前整个循环


运行结果

1
2
3
4
5
6
7
8
9
10
11
12
13
14
0
1
2
3
4
3
6
7
8
9
10
11
12
13




有时候 会 需要 人为的 死循环,给个跳出当前的循环的值


死循环例子


1
2
3
4
while 1:
     a = input ('我就是大哥:')
     if a == '大哥救救我吧':
         break

表达含义

while 1   表达一个 常量表达式,它永久不会 = 0,所以循环 会一直 执行下去。除非设置 break 等类似 跳出 语句循环的 才会终止

a = 输入(内容自定义)这里是为 跟用户交互

if 判断 a 如果什么 用户 输入了 大哥救救我吧

执行代码块内容 break 结束当前整个循环


运行结果

1
2
3
4
我就是大哥:救命
我就是大哥:大哥
我就是大哥:我跟你了
我就是大哥:大哥救救我吧


2017年 12月1号 王宇林

 

本文转自  新网学会51CTO博客,原文链接:http://blog.51cto.com/xwxhvip/2046593 ,如需转载请自行联系原作者

相关文章
|
1月前
|
Python
Python中的`range`函数与负增长
在Python中,`range`函数用于生成整数序列,支持正向和负向增长。本文详细介绍了如何使用`range`生成负增长的整数序列,并提供了多个实际应用示例,如反向遍历列表、生成倒计时和计算递减等差数列的和。通过这些示例,读者可以更好地掌握`range`函数的使用方法。
53 5
|
1月前
|
开发工具 Python
[oeasy]python043_自己制作的ascii码表_循环语句_条件语句_缩进_indent
本文介绍了如何使用Python制作ASCII码表,回顾了上一次课程中`print`函数的`end`参数,并通过循环和条件语句实现每8个字符换行的功能。通过调整代码中的缩进,实现了正确的输出格式。最后展示了制作完成的ASCII码表,并预告了下一次课程的内容。
28 2
|
1月前
|
Python
在 Python 中实现各种类型的循环判断
在 Python 中实现各种类型的循环判断
34 2
|
1月前
|
Python
Python 中,循环判断
Python 中,循环判断
51 1
|
1月前
|
人工智能 Python
[oeasy]python039_for循环_循环遍历_循环变量
本文回顾了上一次的内容,介绍了小写和大写字母的序号范围,并通过 `range` 函数生成了 `for` 循环。重点讲解了 `range(start, stop)` 的使用方法,解释了为什么不会输出 `stop` 值,并通过示例展示了如何遍历小写和大写字母的序号。最后总结了 `range` 函数的结构和 `for` 循环的使用技巧。
38 4
|
2月前
|
Java 索引 Python
【10月更文挑战第19天】「Mac上学Python 30」基础篇11 - 高级循环技巧与应用
本篇将介绍更深入的循环应用与优化方法,重点放在高级技巧和场景实践。我们将讲解enumerate()与zip()的妙用、迭代器与生成器、并发循环以及性能优化技巧。这些内容将帮助您编写更高效、结构更合理的代码。
73 5
|
2月前
|
存储 Python
[oeasy]python038_ range函数_大小写字母的起止范围_start_stop
本文介绍了Python中`range`函数的使用方法及其在生成大小写字母序号范围时的应用。通过示例展示了如何利用`range`和`for`循环输出指定范围内的数字,重点讲解了小写和大写字母对应的ASCII码值范围,并解释了`range`函数的参数(start, stop)以及为何不包括stop值的原因。最后,文章留下了关于为何`range`不包含stop值的问题,留待下一次讨论。
28 1
|
2月前
|
人工智能 IDE 测试技术
使用通义灵码提升Python开发效率:从熟悉代码到实现需求的全流程体验
作为一名Python开发者,我最近开始使用通义灵码作为开发辅助工具。它显著提高了我的工作效率,特别是在理解和修改复杂代码逻辑方面。通过AI编码助手,我能够在短时间内快速上手新项目,实现新需求,并进行代码优化,整体效率提升了60%以上。通义灵码不仅加快了代码生成速度,还增强了代码的健壮性和稳定性。
|
2月前
|
数据安全/隐私保护 Python
Python循环语句
【10月更文挑战第7天】