开发者社区> 向阳逐梦> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Python语法之循环

简介: 循环使得我们能够对列表中的每个元素执行相同的操作,这样对于任意长度的列表我们都可以很高效地对其进行处理。
+关注继续查看

循环使得我们能够对列表中的每个元素执行相同的操作,这样对于任意长度的列表我们都可以很高效地对其进行处理。

远古的时候,大地出现了严重的旱灾。炎热烤焦了森林,烘干了大地,晒干了禾苗草木。原来,帝俊与羲和生了 10个孩子都是太阳,他们住在东方海外,海水中有棵大树叫扶桑。10个太阳睡在枝条的底下,轮流跑出来在天空执勤,照耀大地。但有时,他们一齐出来给人类带来了灾难。为了拯救人类,后羿张弓搭箭,向那 9 个太阳射去。只见天空出现爆裂的火球,坠下一只只三足乌。最后,天上只留下一个太阳。

现在需要我们使用循环语句来帮助后羿判断,什么情况下需要后羿保持射箭状态。

1. for 循坏

for 循环用于迭代序列(即列表、元组、字典、集合或字符串等)。这与其他编程语言中的 for 关键字不太相似,而是更像其他面向对象编程语言中的迭代器方法。

通过使用 for 循环,我们可以为列表、元组、集合中的每个元素执行一系列的操作。

1.1 循坏语法

image

1.2 循坏流程图

image

1.3 实例

我们一起来看一个数字的实例:依次打印出 1~20。

# 打印出1-20
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
for var in numbers:
    print(var)

我们也可以在这个基础上进行进一步的数字计算,比如对 1 到 20 的数字进行求和:

# 对 1 到 20 的数字求和
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
count = 0
for var in numbers:
    count += var
print("count = ", count)

我们了解了 for 循环的使用方法之后,我们一起来帮助后羿判断射箭的动作什么时候可以停下来吧?

天空中有 10 个太阳,后羿的任务是要射掉其中的九只,留下一只在天上工作来保障地球的正常运转。也就是说,当天空中太阳数量为 2~10 时,后羿需要保持射箭动作。我们可以将天空中太阳的数量用一个列表sun_in_sky 表示,当太阳数量为2~10时,后羿需要继续射箭!语句如下,我们点击运行:

# 天空中的太阳数量在2-10时,保持射箭!
sun_in_sky = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for i in sun_in_sky:
    if i > 1:
        print("继续射箭 ")

2. while循坏

我们也可以使用 while 循环来帮助后羿做判断,我们一起先来了解下 while 的语法规则:

while 循环:只要条件满足,就会一直执行一组语句。Python 中,while 表示的信息是当...时候,也就是说当 while 循环的条件满足时,会一直执行满足条件的语句。

2.1 while循环语法

image

在一次循环的过程中,首先会判断 condition 是否为 True。如果为 True,则执行循环体语句。

一次循环结束之后,会继续判断 condition 是否为 True,如果为 True,则继续执行循环体语句;上述过程会一直持续下去,直到 condition 为 False。

2.2 while循坏流程图

image

2.3 实例

和 for 循环一样,我们一起来看下使用 while 循环打印出:1~20。

# 打印1-20
i = 0
while i < 20:
    i += 1
    print(i)

我们继续来看一个复杂一些的例子,对 20 以内的正整数求和:

# 对 20 以内的正整数求和
count = 0
n = 20
i = 1
while i <= 20:
    count += i
    i += 1
print("count = ", count)

3. break和continue

一般情况下,循环语句会重复执行循环体语句,直到循环条件不满足。但是,在有些情况下,我们需要提前结束本轮循环或者直接结束整个循环。这时候便要用到 break 和 continue 语句。break 和 continue 语句的使用,通常是与 if 条件语句配合的,当满足 if 条件语句的时候,结束整个循环或者结束本轮循环。

我们一起先来看下 break 语句:

3.1 break

如果想提前结束整个循环,可以使用 break 语句。

我们一起来看下方例子:对 1 到 20 的数字求和(和为 210),当和大于 100 时,停止求和,退出整个循环。

我们运行下方语句:

3.1.1 将 break 用于 for 循环

# 对 1 到 20 的数字求和,当和大于 100 时,便停止求和
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
count = 0
for var in numbers:
    count += var
    if count >= 100:
        break
print("count = ", count)

我们看到打印出的结果是 105,我们提取出其中的 for 语句:

image

3.1.2 将 break 用于while循环

# 对 20 以内的正整数求和,当和大于 100 时,停止求和
count = 0
n = 20
i = 1
while i <= 20:
    count += i
    i += 1
    if count >= 100:
        break
print("count = ", count)

我们看到打印的结果还是 105,当 count 值为 105 时,满足条件判断语句 if count >= 100: 执行break,退出整个循环。

在这里还是提醒大家,注意代码规范哟,注意各个语句的缩进,if 语句块是包含在 while 语句块中的,因此if 语句前面有 4 个空白字符,break 语句是在 if 语句下的,因此 break 语句相较于 if 语句前方又有四个空白字符,还有冒号及所有代码都是英文状态下的。

3.2 continue

3.2.1 将continue用于for循坏

我们先一起来看下continue 在 for 循环的应用,大家点击运行。

# 对 20 以内的偶数求和
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
count = 0
for var in numbers:
    # 奇数,除以2的余数不为0,也就是不能被2整除
    if var % 2 != 0:
        # 当数字为奇数时,退出本次循环
        continue
    count += var
print("count = ", count)

结果实现了对 20 以内偶数的求和。我们来看这部分的 for 循环语句:

image

continue 是退出本次循环,当数字为奇数时,则退出本次循环,不执行循环体内的命令;当数字为偶数时,执行循环体内的命令,完成求和。如果在上述语句中,continue 的位置是 break,打印的结果就是0,因为第一次循环 1 就是奇数,不能对 2 整除,直接跳出了整个循环,没有执行 count 变量的求和运算,结果还是count 的原始赋值 0。

3.2.2 将continue用于while循坏

# 对 20 以内的偶数求和
count = 0
n = 20
i = 0
while i < 20:
    i += 1
    if i % 2 != 0:
        continue
    count += i
print("count = ", count)

语法规则是一样的哦,当i是奇数时,退出本次循环,不执行 count += i求和语句,当i为偶数时,则执行求和语句,实现对 20 以内的偶数求和!

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
7_python基础—while循环应用1-100累加和
7_python基础—while循环应用1-100累加和
0 0
Python基础06 循环
原文:Python基础06 循环 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!   循环用于重复执行一些程序块。从上一讲的选择结构,我们已经看到了如何用缩进来表示程序块的隶属关系。
735 0
Python基础06 循环
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!   循环用于重复执行一些程序块。从上一讲的选择结构,我们已经看到了如何用缩进来表示程序块的隶属关系。
556 0
Python基础(条件判断和循环) if elif else for while break continue;
条件判断 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断。 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: age = 20 if age >= 18: print('your age is', age) print('adult') 根据Python的缩进规则,如果if语句判断是True,就把缩进的两行print语句执行了,否则,什么也不做。
1912 0
Python编程:使用supervisor管理Django-Celery进程
Python编程:使用supervisor管理Django-Celery进程
0 0
Python编程:方差、标准差、均方差、均方根值、均方误差、均方根误差
Python编程:方差、标准差、均方差、均方根值、均方误差、均方根误差
0 0
Python编程:使用gensim对中文文本进行相似度计算
Python编程:使用gensim对中文文本进行相似度计算
0 0
+关注
向阳逐梦
人生享受编程,编程造就人生。
文章
问答
文章排行榜
最热
最新
相关电子书
更多
Python系列直播第一讲——Python中的一切皆对象
立即下载
Python 脚本速查手册
立即下载
Python第五讲——关于爬虫如何做js逆向的思路
立即下载