Python循环结构
创始人
2024-06-02 05:57:53
0

文章详细介绍了Python中的循环结构,包括for循环、while循环以及range()函数的使用方法。

Python提供了很多种循环结构,其中最常用的是for循环和while循环。

当我们写代码的时候,有时候需要重复执行同一个或一些指令。例如,如果我们想要编写一个控制机器人踢足球的程序,当机器人持球并且没有进入射门范围时,我们需要一直发出指令让机器人向球门方向移动。在这种情况下,让机器人向球门方向移动是一个需要重复执行的动作,我们可以使用分支结构来判断机器人是否持球以及是否进入射门范围。另一个例子是,如果我们想要在屏幕上每隔1秒钟打印一次“hello, world”,并持续打印一个小时,我们不可能直接将代码print('hello, world')重复写3600次,这时就需要使用循环结构。

for-in循环

循环结构是程序中控制某个或一些指令重复执行的结构。在Python中,有两种方法来构建循环结构:一种是for-in循环,另一种是while循环。

for循环可以遍历序列(如列表、元组、字符串等)中的每个元素,并对其进行操作。语法如下:

for item in sequence:# 执行操作

item是序列中的每个元素,sequence是要遍历的序列。在循环体中,可以对item进行任何操作。

例如:用for循环实现1~100求和

sum = 0
for x in range(101):sum += x
print(sum)

需要说明的是上面代码中的range(1, 101)可以用来构造一个从1到100的范围,当我们把这样一个范围放到for-in循环中,就可以通过前面的循环变量x依次取出从1到100的整数。当然,range的用法非常灵活,下面给出了一个例子:

  • range(101):可以用来产生0到100范围的整数,需要注意的是取不到101。
  • range(1, 101):可以用来产生1到100范围的整数,相当于前面是闭区间后面是开区间。
  • range(1, 101, 2):可以用来产生1到100的奇数,其中2是步长,即每次数值递增的值。
  • range(100, 0, -2):可以用来产生100到1的偶数,其中-2是步长,即每次数字递减的值。

我们可以使用for-in循环来遍历一个可迭代对象,例如字符串和列表。对于字符串,循环变量将依次取到字符串中的每个字符。对于列表,循环变量将依次取到列表中的每个元素。下面是一些例子:

  • 遍历字符串:“hello, world”
for ch in "hello, world":print(ch)
  • 遍历列表:[1, 2, 3, 4, 5]

while循环

while循环则是在满足条件的情况下反复执行循环体中的语句。语法如下:

while condition:# 执行操作

condition是循环的条件,只有在满足条件的情况下才会执行循环体中的语句。在循环体中,应该有一些操作可以改变condition的值,否则循环会一直执行下去,直到程序崩溃或者手动停止。

如果要构造不知道具体循环次数的循环结构,我们推荐使用while循环。while循环通过一个能够产生或转换出bool值的表达式来控制循环,表达式的值为True则继续循环;表达式的值为False则结束循环。

下面我们通过一个“猜数字”的小游戏来看看如何使用while循环。猜数字游戏的规则是:计算机出一个1到100之间的随机数,玩家输入自己猜的数字,计算机给出对应的提示信息(大一点、小一点或猜对了),如果玩家猜中了数字,计算机提示用户一共猜了多少次,游戏结束,否则游戏继续。

import randomanswer = random.randint(1, 100)
counter = 0
while True:counter += 1number = int(input('请输入: '))if number < answer:print('大一点')elif number > answer:print('小一点')else:print('恭喜你猜对了!')break
print('你总共猜了%d次' % counter)
if counter > 7:print('你的智商余额明显不足')

除了for循环和while循环,Python还提供了range()函数,用于生成一个序列。range()函数有三个参数:起始值、终止值和步长。语法如下:

range(start, stop[, step])

start是序列的起始值,默认为0;stop是序列的终止值,但不包括在序列内;step是序列的步长,默认为1。使用range()函数可以轻松地生成一个数字序列,再用for循环进行遍历操作。

练习题

免费下载答案源码

练习1:输入一个正整数判断是不是素数。

提示:素数指的是只能被1和自身整除的大于1的整数。

参考答案:
在这里插入图片描述

练习2:输入两个正整数,计算它们的最大公约数和最小公倍数。

提示:两个数的最大公约数是两个数的公共因子中最大的那个数;两个数的最小公倍数则是能够同时被两个数整除的最小的那个数。

参考答案:

在这里插入图片描述

练习3:打印如下所示的三角形图案。

*
**
***
****
*****
    **********
*****
    ****************
*********

参考答案:

在这里插入图片描述
免费下载答案源码

相关内容

热门资讯

联欢会主持词结束语 联欢会主持词结束语(通用6篇)  晚会开得就是否成功圆满与主持人的讲话有很大关系。下面小编整理的联欢...
幼儿园毕业晚会主持词 幼儿园毕业晚会主持词  主持人在台上表演的灵魂就表现在主持词中。时代不断在进步,司仪等是很多场合都需...
美剧经典台词 美剧精选经典台词  在快速变化和不断变革的今天,能够利用到台词的场合越来越多,台词是一种特殊的,也是...
朗诵会主持词 关于朗诵会主持词4篇  主持词要根据活动对象的不同去设置不同的主持词。在当下这个社会中,很多场合都需...
记者节晚会主持词 记者节晚会主持词  主持词是主持人在台上表演的灵魂之所在。随着社会一步步向前发展,主持词的实用频率越...
婚礼父亲致辞 婚礼父亲致辞(精选15篇)  在平凡的学习、工作、生活中,大家肯定对各类致辞都很熟悉吧,致辞具有“礼...
校园红歌赛的主持词 校园红歌赛的主持词  主持词是主持人在节目进行过程中用于串联节目的串联词。在现今人们越来越重视活动氛...
开业主持词开场白 开业主持词开场白  根据活动对象的不同,需要设置不同的主持词。在当今社会生活中,活动集会越来越多,主...
关于唱歌比赛主持词   主持词是指主持人在主持节目的过程中进行节目串联的串联词,一般由开场白、中间部分与结束语组成。以下...
动漫感人台词 动漫感人台词(通用175句)  台词可以刻画人物的性格,表现人物的感情,加强剧情的表现力。那些广为流...
最新年会主持词 最新年会主持词(精选11篇)  契合现场环境的主持词能给集会带来双倍的效果。在如今这个时代,主持人的...
新生文艺汇演主持词 新生文艺汇演主持词  主持词要根据活动对象的不同去设置不同的主持词。在当今社会生活中,各种集会的节目...
家长代表幼儿园毕业典礼主持词 家长代表幼儿园毕业典礼主持词  主持词是各种演出活动和集会中主持人串联节目的串联词。在人们积极参与各...
学校元旦晚会主持词开场白和结... 学校元旦晚会主持词开场白和结束语  2017年元旦晚会主持词怎么写?怎么开场比较好呢?结束语又该怎么...
毕业晚会致辞 毕业晚会致辞(精选18篇)  在学习、工作或生活中,大家都写过致辞吧,致辞要求风格的雅、俗、庄、谐要...
幼儿园六一节目串词 幼儿园六一节目串词红黄蓝幼第一文库网儿园节目串词主持人(师):亲爱的家长朋友们( ):敬爱的老师们(...
祝寿主持词 祝寿主持词  主持词要尽量增加文化内涵、寓教于乐,不断提高观众的文化知识和素养。在人们积极参与各种活...
回门宴主持词 让你的回门宴顺... 回门宴主持词 让你的回门宴顺利完成  篇一:新婚回门宴主持词  亲爱的各位来宾,各位亲朋好友,先生们...
结婚新郎致辞 结婚新郎致辞(15篇)  在学习、工作、生活中,说到致辞,大家肯定都不陌生吧,致辞具有能伸能缩,可以...
庆中秋迎国庆联欢晚会主持词(...   (念8条短信)  男:我们的驻外营销健儿发来的每一条祝福都是那么的感人。由于时间关系,我们不能一...