循环语句
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了循环语句相关的知识,希望对你有一定的参考价值。
循环语句while 语句
for 语句
while 语句
根据一定的条件,重复的执行一条语句或多条语句
思考:
输入一个整数n,打印 n行的"hello world"
语法:
while 真值表达式:
语句块1
else:
语句块2说明:
- 先执行真值表达式,测试布尔值是否为True或False
- 如果真值表达式值为True,则执行语句块1,然后再回到第1步
- 如果真值表达式值为False,则执行else子句中的语句块2,然后结束此while 语句,如果没有else子句,则直接结束此while语句的执行
注: else 子句部分可以省略(同if语句类似)
课堂练习:
- 用循环语句,打印1~10的整数
-
打印 1~20的整数,打印在一行内;
提示:
print(xxxx, end=‘ ‘) -
打印1~20的整数,每五个数打印在一行
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
...提示:
while 内部可以嵌套if语句来实现换行 - 打印从零开始的浮点数,每个数增加0.5, 打印出10以内的这样的数
0.0
0.5
1.0
1.5
...
9.5 -
用while 语句打印15~5之间的数.
-
写程序, 打印 1 + 2 + 3 + ... + 99 + 100的和
(要求用while语句实现) - 用while语句实现打印三角形,输入一个数,表示三角形的高度和宽度:
如:
请输入三角形宽度:4
打印结果如下:
*
**
-
用while语句实现打印三角形,输入一个数,表示三角形的高度和宽度:
如:
请输入三角形宽度:4
打印结果如下:
*
**
- 用while语句实现打印三角形,输入一个数,表示三角形的高度和宽度:
如:
请输入三角形宽度:4
打印结果如下:
*
- 用while语句实现打印三角形,输入一个数,表示三角形的高度和宽度:
- 用while语句实现打印三角形,输入一个数,表示三角形的高度和宽度:
如:
请输入三角形宽度:4
打印结果如下:
*
while 语句的注意事项:
- 要控制循环真值表达的值来防止死循环
- 通常在循环的语句块中通过改变循环变量来控制循环次数和变量的走向
问题:
1 2 3 4 5 6 .... 20
...
1 2 3 4 5 6 .... 20
while 语句的嵌套:
示意:
while 真值表达式1:
...
while 真值表达式2:
....
else:
...
else:
...
练习:
写程序,输入一个整数,打印指定宽度的正方形
如:
请输入:5
打印如下图形:
5 4 3 2 1
5 4 3 2 1
5 4 3 2 1
5 4 3 2 1
5 4 3 2 1
请输入:3
打印如下图形:
3 2 1
3 2 1
3 2 1
回顾之前学过语句
if 语句
表达式语句
赋值语句
pass 语句
del 语句
while 语句
break 语句:
作用:
用于循环语句(while和for语句)中, 用来终止当前循环语句的执行;
语法:
break
说明:
当break执行后, 此循环语句break之后的语句将不再执行
break语句通常和if语句组成使用
break语句终止循环时,循环语句的else子句不会被执行
break 语句只能终止当前循环语句的执行,如果有循环嵌套时,不会跳出嵌套的外重循环
break 语句只能在循环语句(while/for)的内部使用
死循环:
死循环是指循环条件一直成立的循环
死循环通常用break语句来终止循环
死循环的else子句永远不会执行
练习:
任意输入一些整数,当输入负数时结束输入.
当输入完成后,打印您输入的这些数的和
1<回车>
3<回车>
8<回车>
2<回车>
-1<回车>
和是: 14
for 语句
for语句用来遍历序列或可迭代对象的每一个元素
可迭代对象:
可迭代对象是指能依次获取数据的对象
可迭代对象包括:
字符串 str
----(以下后面会讲到) ------
列表 list
元组 tuple
字典 dict
集合 set
range等
语法:
for 变量列表 in 可迭代对象:
语句块1
else:
语句块2
语法说明:
- 可迭代对象每次提供一个元素依次赋值给变量列表中的变量
赋值完毕后执行语句块1 - 可迭代对象不再能提供数据元素后,将执行else子句部分的语句,然后退出循环
- else子句部分可以省略(同while语句类似)
- 当在循环内部用break终止循环时,else子句部分语句不会执行
for 语句的语法缩进同while和if类似,建议用四个空格
练习:
- 写程序任意输入一段字符串.
1) 计算出输入的字符 ‘a‘ 的个数,并打印个数
2) 计算出空格的个数,并打印
要求:用for语句,(不允许用S.count方法)实现上述功能
思考:
用while语句能否实现上述功能
练习:
-
打印出 0~30之内的所有偶数
-
写程序 用while语句生成如下字符串:
并打印出来
1) ‘ABCD...........XYZ‘
2) ‘AaBbCcDd.......XxYyZz‘
知识点: ord和chr函数 - 输入Unicode的起始值用变量begin绑定
输入Unicode终止值用变量end绑定
打印这些字符所对应的文字,如:
请输入起始值:48
请输入终止值:58
打印如果:
十进制编码 十六进制编码 文字
48 0x30 0
49 0x31 1
....
以上是关于循环语句的主要内容,如果未能解决你的问题,请参考以下文章