Python从入门到网络爬虫(控制语句详解)

前言

做任何事情都要遵循一定的原则。例如,到图书馆去借书,就需要有借书证,并且借书证不能过期,这两个条件缺一不可。程序设计亦是如此,需要使用流程控制实现与用户的交流,并根据用户需求决定程序“做什么”“怎么做"。

Python的流程控制语句主要可以分为以下几类:

1. 选择语句:if……else……、if……elif……else……、if语句嵌套

2. 循环语句:for循环、while循环、循环嵌套

3. pass语句:pass语句

4. 跳转语句:break语句、continue语句

1. 选择语句

1.1 if语句

if True:print("True")

1.2 if…else语句

# 定义函数 计算状态
def getState(state):if state:print("状态启用")else:print("状态关闭")# 调用函数 打印状态
getState(state)

1.3 if...elif...else语句

# 定义函数 计算等级
def getLevel(scored):# if else条件语句if scored >= 85 and scored <= 100:print("A")elif scored >= 70 and scored <= 84:print("B")elif scored >= 60 and scored <= 69:print("C")else:print("D")# 调用函数 打印等级
getLevel(scored)

1.4 if语句嵌套

2. 循环语句

2.1 while循环

Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。

# while循环语句
j = 1
# 简单while循环语句
while j < 10:print(j)j += 1

while...else...语句 

2.2 for循环

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。

# for循环语句
for i in range(1, 10):print("for:" + str(i))
# 循环字符串
for i in "python":print(i)

循环中使用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 ('%d 是一个质数' % num)

2.3 循环嵌套

在Python中,允许在一个循环中嵌入另外一个循环,这称为循环嵌套。例如电影院找座位,先循环找第几排,再循环找第几列。实现方式就是在原有的语句块中再写一层循环,此处便不多作解释。

注意:在Python语言的嵌套时,一定要注意缩进,没缩进或者错误缩进都有可能导致程序无法运行或者语义错误

下面的代码示例,我们一起通过一个双层的循环嵌套来实现九九乘法表的实现

for i in range(1, 10):for j in range(1, i+1):print('{}x{}={}\t'.format(j, i, i*j), end='')print()

输出结果: 

1x1=1    
1x2=2    2x2=4    
1x3=3    2x3=6    3x3=9    
1x4=4    2x4=8    3x4=12    4x4=16    
1x5=5    2x5=10    3x5=15    4x5=20    5x5=25    
1x6=6    2x6=12    3x6=18    4x6=24    5x6=30    6x6=36    
1x7=7    2x7=14    3x7=21    4x7=28    5x7=35    6x7=42    7x7=49    
1x8=8    2x8=16    3x8=24    4x8=32    5x8=40    6x8=48    7x8=56    8x8=64    
1x9=9    2x9=18    3x9=27    4x9=36    5x9=45    6x9=54    7x9=63    8x9=72    9x9=81

3. 跳转语句

当循环条件一直满足时,程序会一直执行下去,就像一辆迷路的车,在某个地方不停地转圈。如果希望在中间离开循环,也就是在for循环的次数结束前,在while条件变False前结束循环,我们可以使用跳转语句。

3.1 break语句

break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。break语句用在while和for循环中。如果您使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。

简单来说就是一个人跑步时,原计划跑十圈。但是跑到第三圈的时候,看到了男神或者女神,于是离开操场,中止了跑步,去和男神女神搭讪去了。只跑了两圈,第三圈没跑完。

# while循环中使用break语句用于跳出整个循环
x = 0
while x < 10:x += 1if x % 2 == 0:breakprint("x:" + str(x))
# 输出 x:1

3.2 continue语句

Python continue 语句跳出本次循环,而break跳出整个循环。continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。continue语句用在while和for循环中。

简单来讲一个人跑步时,原计划跑十圈。但是跑到第三圈的时候,看到了男神或者女神,于是直接返回起点,和男神女神假装邂逅,一起开始跑步。——跑了九圈,只有第三圈没跑。

for letter in 'Python':     # 第一个实例if letter == 'h':continueprint '当前字母 :', lettervar = 10                    # 第二个实例
while var > 0:              var = var -1if var == 5:continueprint '当前变量值 :', var
print "Good bye!"

4. pass语句 

Python pass 是空语句,是为了保持程序结构的完整性。pass 不做任何事情,一般用做占位语句。

例如下面代码中如果省略pass语句,则会语法报错,所以pass语句起到占位作用。

if True:pass
else:print("hello World")

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/338324.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024年工信部AI人工智能证书“计算机视觉工程师”证书报考中!

为进一步贯彻落实中共中央印发《关于深化人才发展体制机制改革的意见》和国务院印发《关于“十四五”数字经济发展规划》等有关工作的部署求&#xff0c;深入实施人才强国战略和创新驱动发展战略&#xff0c;加强全国数字化人才队伍建设&#xff0c;持续推进人工智能专业人员能…

【Copilot使用】

Copilot是什么 copilot有多火&#xff0c;1月4日&#xff0c;科技巨头微软在官网上宣布将为Windows 11 PC推出Copilot键。 Copilot是微软在Windows 11中加入的AI助手&#xff0c;该AI助手是一个集成了在操作系统中的侧边栏工具&#xff0c;可以帮助用户完成各种任务。 Copilo…

【前端】使用javascript开发一个在线RGB颜色转换

欢迎来到《小5讲堂》 大家好&#xff0c;我是全栈小5。 这是是《前端》序列文章&#xff0c;每篇文章将以博主理解的角度展开讲解&#xff0c; 特别是针对知识点的概念进行叙说&#xff0c;大部分文章将会对这些概念进行实际例子验证&#xff0c;以此达到加深对知识点的理解和掌…

金和OA C6 upload_json 任意文件上传漏洞

产品介绍 金和网络是专业信息化服务商,为城市监管部门提供了互联网监管解决方案,为企事业单位提供组织协同OA系统开发平台,电子政务一体化平台,智慧电商平台等服务。 漏洞概述 金和 OA C6 upload_json接口处存在任意文件上传漏洞&#xff0c;攻击者可以通过构造特殊请求包上…

每家企业都需要掌握的软文写作技巧,媒介盒子分享

从本质上来说&#xff0c;文案写作是利用文字来影响、说服和受众建立联系的技能&#xff0c;不管是引起用户共鸣还是提高产品销量&#xff0c;有说服力的文案都是推动购买、支持并取得成功的关键&#xff0c;今天媒介盒子就来和大家聊聊&#xff1a;每家企业都需要掌握的软文技…

N卡可以点亮但是A卡无法点亮故障解决记录

目录 关键词平台说明一、故障现象二、排查过程三、根本原因四、措施3.1进入boot后更改CSM启动为下图所示。3.2更改PCIE自动为3.0 关键词 英伟达、AMD、显卡、无法点亮 平台说明 项目Value主板铭瑄 TZZ_H61ITX 2.5GCPU12400f显卡RX6600 RTX4060附加设备PCIE 延长线–显卡 一…

【手搓深度学习算法】用逻辑回归分类Iris数据集-线性数据篇

用逻辑回归分类Iris数据集-线性数据篇 前言 逻辑斯蒂回归是一种广泛使用的分类方法&#xff0c;它是基于条件概率密度函数的最大似然估计的。它的主要思想是将输入空间划分为多个子空间&#xff0c;每个子空间对应一个类别。在每个子空间内部&#xff0c;我们假设输入变量的取…

寄快递选哪个平台便宜?快递优惠券免费领取!

寄快递选哪个平台便宜&#xff1f;快递优惠券免费领取&#xff01; 对于市场来说&#xff0c;快递业是非常重要的一部分&#xff0c;它业既贯通市场流通消费投资出口的各环节&#xff0c;又关联一二三各产业。根据相关数据显示&#xff0c;我国的快递行业正呈现势如破竹的劲头&…

【leetcode】力扣热门算法之K个一组翻转链表【困难】

题目描述 给你链表的头节点 head &#xff0c;每 k 个节点一组进行翻转&#xff0c;请你返回修改后的链表。 k 是一个正整数&#xff0c;它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍&#xff0c;那么请将最后剩余的节点保持原有顺序。 你不能只是单纯的改变节…

【算法每日一练]-练习篇 #Tile Pattern #Swapping Puzzle # socks

目录 今日知识点&#xff1a; 二维前缀和 逆序对 袜子配对(感觉挺难的&#xff0c;又不知道说啥) Tile Pattern Swapping Puzzle socks Tile Pattern 331 题意&#xff1a;有一个10^9*10^9的方格。W表示白色方格&#xff0c;B表示黑色方格。每个(i,j)方的颜色由(i…

docker启动mongo

用户名&#xff1a;root 密码&#xff1a;123456 version: 3.1 services:mongo:image: mongo:7container_name: mongorestart: alwaysports:- 27017:27017volumes:- /opt/data/mongo:/data/dbenvironment:TZ: Asia/ShanghaiMONGO_INITDB_ROOT_USERNAME: rootMONGO_INITDB_ROO…

javaWebssh校园物业管理系统myeclipse开发mysql数据库MVC模式java编程计算机网页设计

一、源码特点 java ssh校园物业管理系统是一套完善的web设计系统&#xff08;系统采用ssh框架进行设计开发&#xff09;&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用 B/S模式开发。开发环境为TOMCAT7.…