【100天精通python】Day5:python 基本语句,流程控制语句

目录

1. 条件语句

1.1 if语句

1.2 if-else语句 

1.3  if-elif-else语句

2 循环语句

2.1 for循环

2.2 while循环:

3  跳转语句

3.1 break语句

3.2 continue语句

3.3 pass语句

4  异常处理语句(try-except语句)

5 语句嵌套

5.1 条件语句套

5.2 循语句嵌套 

5.2.1 for 循环嵌套for 循环

5.2.2  while循环嵌套while循环

5.2.3 while循环嵌套for循环

5.2.4 for循环嵌套while循环

5.3 函数定义语句嵌套


      在Python中,流程控制语句用于根据条件执行不同的代码块。以下是Python中常用的流程控制语句:

1. 条件语句

1.1 if语句

        根据条件判断是否执行特定的代码块。

if condition:# 执行语句块

1.2 if-else语句 

        根据条件判断执行不同的代码块。 

if condition:# 执行语句块1
else:# 执行语句块2

1.3  if-elif-else语句

        根据多条件判断执行不同的代码,流程图如下:​​

 代码:

if condition1:# 如果条件1为真,执行这里的代码
elif condition2:# 如果条件2为真,执行这里的代码
else:# 如果前面的条件都不为真,执行这里的代码

2 循环语句

        循环语句用于重复执行一段代码,直到满足特定条件为止。Python提供了两种循环语句:for循环和while循环。 

2.1 for循环

        for循环用于遍历一个可迭代对象(如列表、元组、字符串等),执行循环体中的代码。它的基本语法如下:

for item in iterable:# 遍历可迭代对象中的每个元素,执行这里的代码

2.2 while循环:

        while循环用于在满足特定条件的情况下重复执行一段代码,直到条件不再成立。它的基本语法如下: 

while condition:# 只要条件为真,执行这里的代码

3  跳转语句

        在 Python 中,跳转语句用于改变程序的执行流程,常见的跳转语句包括breakcontinuepass。下面是它们的详细介绍:

3.1 break语句

  break语句用于跳出当前所在的最内层循环(for循环或while循环),并继续执行循环后的代码。它常用于在满足特定条件时提前结束循环。例如:

for i in range(5):if i == 3:breakprint(i)

输出:

0
1
2

在上述例子中,当i等于3时,break语句被执行,跳出了循环。

3.2 continue语句

  continue语句用于跳过当前循环中的剩余代码,直接进行下一次循环迭代。它常用于在满足特定条件时跳过当前循环的执行。例如:

for i in range(5):if i == 2:continueprint(i)

输出:

0
1
3
4

 在上述例子中,当i等于2时,continue语句被执行,跳过了该次循环的剩余代码,直接进行下一次循环迭代。

3.3 pass语句

  pass语句用于表示一个空语句块,不执行任何操作。它通常用作占位符,用于在语法上需要语句但又不需要执行任何操作的地方。例如:

if condition:pass
else:# 执行其他代码

在上述例子中,当条件满足时,pass语句不执行任何操作,而是直接跳过,执行else块中的代码。

4  异常处理语句(try-except语句)

        在 Python 中,异常处理语句(try-except语句)用于捕获和处理代码执行过程中可能出现的异常情况,以防止程序意外终止。通过使用try-except语句,你可以编写代码来处理异常,而不是让程序崩溃。

        下面是try-except语句的基本语法:

try:# 可能引发异常的代码块
except ExceptionType1:# 处理特定类型的异常1
except ExceptionType2:# 处理特定类型的异常2
except:# 处理其他所有类型的异常
else:# 如果没有异常发生,执行这里的代码
finally:# 无论是否发生异常,都执行这里的代码

try语句块中的代码是可能引发异常的代码块。如果在执行try语句块中的代码时引发了异常,那么相应的异常处理块(except语句块)会被执行。你可以使用一个或多个except语句块来处理特定类型的异常,也可以使用一个没有指定异常类型的except语句块来处理所有类型的异常。

除了except语句块,还可以使用else语句块和finally语句块: 

  • else语句块:当没有异常发生时,执行else语句块中的代码。
  • finally语句块:无论是否发生异常,都会执行finally语句块中的代码。

下面是一个示例:

try:# 可能引发异常的代码块result = 10 / 0  # 除以零会引发ZeroDivisionError异常
except ZeroDivisionError:print("除以零错误!")
except Exception as e:print("其他异常:", str(e))
else:print("没有发生异常。")
finally:print("无论是否发生异常,都执行这里的代码。")

在上述示例中,由于除以零会引发ZeroDivisionError异常,所以程序会跳转到相应的except语句块,输出"除以零错误!"。然后会执行finally语句块中的代码,输出"无论是否发生异常,都执行这里的代码。"。

5 语句嵌套

在Python中,语句嵌套是指将一个或多个语句放置在另一个语句的内部。常见语句嵌套形式包条件语句嵌套、循环语句套和函数定义语嵌套

5.1 条件语句套

if condition1:# 执行语句块1if condition2:# 执行语句块2else:# 执行语句块3
else:# 执行句块4

5.2 循语句嵌套 

5.2.1 for 循环嵌套for 循环
for i range(5):# 外层循环for j in range(3):# 内层循环# 执行语句块
5.2.2  while循环嵌套while循环
i = 1
while i <= 3:print("外层循环:", i)j = 1while j <= 2:print("内层循环:", j)j += 1i += 1

 在上述示例中,外层的 while 循环会迭代 3 次,每次迭代时内层的 while 循环会执行 2 次。这样会输出外层循环的值以及内层循环的值。

在Python中,你可以在一个循环语句中嵌套另一个循环语句,例如在while循环中嵌套for循环,或者在for循环中嵌套while循环。这种循环嵌套可以用于处理更复杂的迭代和控制流程。下面是这两种循环嵌套的示例:

5.2.3 while循环嵌套for循环
i = 1
while i <= 3:print("外层循环:", i)for j in range(2):print("内层循环:", j)i += 1

在上述示例中,外层的while循环会迭代3次,每次迭代时内层的for循环会执行2次。这样会输出外层循环的值以及内层循环的值。

输出:

5.2.4 for循环嵌套while循环
for i in range(3):print("外层循环:", i)j = 0while j < 2:print("内层循环:", j)j += 1

 在上述示例中,外层的for循环会迭代3次,每次迭代时内层的while循环会执行2次。这样会输出外层循环的值以及内层循环的值。

输出:

5.3 函数定义语句嵌套

def outer_function():# 外层函数def inner_function():# 内层函数# 执行语句块# 执行语句块

以下是一个使用Python编写的逢7拍腿游戏的示例代码:

def clap_game():print("欢迎来到逢7腿游戏!")print("按下回车键开始...")input()target_score = 100current_score = 0while current_score < target_score:print("当前分数:", current_score)print("请输入 'clap' 进行拍:")user_input = input()if user_input.lower() == "clap":current_score += 1if current_score % 7 0 or '7' in str(current_score):print("恭喜你到了7的倍数或包含数字7!")else            print("输入无效,请重新输入!")print("恭喜达到目标分数!", target_score)print("戏结束!")clap_game()

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

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

相关文章

unity 调用C++ dll 操作升级套娃函数调用

之前一直以为C生成dll&#xff0c;在unity中调用时要把传出去的值设置在主函数中&#xff0c;以参数或反回值的形式。 当然在DLL工程中可以说没有主函数&#xff0c;那个可以运行一个函数&#xff0c;其会调用其他函数从而一直调其他相关函数。 那问题是在层级是二或三------…

前端工程中的设计模式应用

本文旨在系统性介绍一下23种设计模式&#xff0c;给出通俗易懂的案例、结构图及代码示例&#xff0c;这也是我自身学习理解的过程。或许其中的几种设计模式写的并不是很清晰明了易懂&#xff0c;更详细的可根据提到的参考文献进行深入学习。 什么是设计模式 设计模式这个概念是…

Java解决new date出现的时区问题(差8小时)

1、设置当前时区 SimpleDateFormat format new SimpleDateFormat("yyyy/MM/dd"); format.setTimeZone(TimeZone.getTimeZone("GMT8:00")); 2、设置全局时区 创建一个全局配置类&#xff0c;用于配置项目全局时区。 这样就不用专门在各个地方设置时区了…

干货!3个技巧让你轻松增强客户实时聊天的体验感

在当今竞争激烈的商业环境中&#xff0c;提供出色的客户服务成为企业成功的关键要素之一。尤其是在实时聊天平台上&#xff0c;为客户提供优质的体验感&#xff0c;对于建立良好的客户关系和提高销售转化率至关重要。如果你还在苦恼如何增强用户体验感&#xff0c;苦恼如何增加…

剑指offer刷题笔记--Num51-60

1--数组中的逆序对&#xff08;51&#xff09; 主要思路&#xff1a; 基于归并排序&#xff0c;视频讲解参考&#xff1a;数组中的逆序对 #include <iostream> #include <vector>class Solution { public:int reversePairs(std::vector<int>& nums) {if(…

iOS-Block

Blocks的学习 Block的分类 Block根据其类型可以分为三类&#xff1a; 全局Block&#xff08;NSGlobalBlock&#xff09;栈Block&#xff08;NSMallocBlock&#xff09;堆Block&#xff08;NSStackBlock&#xff09; 而其区分的规则为&#xff1a; 如果没有引用局部变量&…

arping命令 ip地址冲突检测 根据ip查mac地址

arping命令介绍 arping 命令主要用来获取ip对应的mac地址&#xff0c;更新本地arp缓存表。平时主要用来探测ip地址是否冲突即同一个网络里&#xff0c;同一个ip不同mac地址的情况。ip地址冲突将导致网络故障。 arping常用命令参数 arping [参数] ip -U 强制更新邻近主机的a…

关于电脑显示器屏幕看不出灰色,灰色和白色几乎一样无法区分,色彩调整方法

问题&#xff1a; 电脑显示器屏幕看不出灰色&#xff0c;灰色和白色几乎一样无法区分。白色和灰色有色差。 解决方法&#xff1a; 打开“控制面板” ->“色彩管理” ->“高级” ->“校正显示器” 在下一步调节中调成中间这一个实例的样子就可以了 进行微调&#x…

【hadoop】部署hadoop全分布模式

hadoop全分布模式 全分布模式特点部署全分布模式准备工作正式配置hadoop-env.shhdfs-site.xmlcore-site.xmlmapred-site.xmlyarn-site.xmlslaves对NameNode进行格式化复制到另外两台虚拟机启动 对部署是否成功进行测试 全分布模式特点 真正的分布式环境&#xff0c;用于生产具…

【Vue】day02-Vue基础入门

目录 day02 一、今日学习目标 1.指令补充 2.computed计算属性 3.watch侦听器 4.综合案例 &#xff08;演示&#xff09; 二、指令修饰符 1.什么是指令修饰符&#xff1f; 2.按键修饰符 3.v-model修饰符 4.事件修饰符 三、v-bind对样式控制的增强-操作class 1.语法…

边缘检测之loG算子

note // 边缘检测之loG算子&#xff1a;对高斯函数求二阶导数 // G(x,y) exp(-1 * (x*x y*y) / 2 / sigma / sigma) // loG(x,y) ((x*x y*y - 2 * sigma * sigma) / (sigma^4)) * exp(-1 * (x*x y*y) / 2 / sigma /sigma) /* [ 0,0,-1,0,0; 0,-1,-2,-1,0; -1,-2,16,-2…

uni-app实现emoj表情包发送(nvue版)

uni-app实现表情包发送&#xff0c; vue实现思路直接使用grideview网格布局加载emoj表情包即可实现&#xff0c;很简单&#xff0c;但是nvue稍微复杂&#xff0c;这里采用的方案是nvue提供的组件list 看效果 代码 <template><view style"margin-right: 10rpx;m…

如何使用自有数据微调ChatGLM-6B

构建自己的数据集 数据格式&#xff1a;问答对 官网例子 ADGEN 数据集任务为根据输入&#xff08;content&#xff09;生成一段广告词&#xff08;summary&#xff09;。 { "content": "类型#上衣*版型#宽松*版型#显瘦*图案#线条*衣样式#衬衫*衣袖型#泡泡袖…

3.8 Bootstrap 面包屑导航(Breadcrumbs)

文章目录 Bootstrap 面包屑导航&#xff08;Breadcrumbs&#xff09; Bootstrap 面包屑导航&#xff08;Breadcrumbs&#xff09; 面包屑导航&#xff08;Breadcrumbs&#xff09;是一种基于网站层次信息的显示方式。以博客为例&#xff0c;面包屑导航可以显示发布日期、类别或…

Stable Diffusion + EbSynth + ControlNet 解决生成视频闪烁

一、安装 1.1、安装ffmpeg 下载地址&#xff1a; 解压&#xff0c;配置环境变量 E:\AI\ffmpeg\bin 检查是否安装成功 1.2、安装SD的 EbSynth 插件 插件地址 https://github.com/s9roll7/ebsynth_utility 报错&#xff1a;ModuleNotFoundError: No module named extension…

【广州华锐互动】AR远程巡检系统在设备维修保养中的作用

随着科技的不断发展&#xff0c;AR(增强现实)远程巡检系统在设备检修中发挥着越来越重要的作用。这种系统可以将AR技术与远程通信技术相结合&#xff0c;实现对设备检修过程的实时监控和远程指导&#xff0c;提高设备检修的效率和质量。 首先&#xff0c;AR远程巡检系统可以帮助…

单片机尽力少用位域操作

1、在51单片机中少用uint32_t类型&#xff0c;查看汇编真的好多条指令&#xff0c;尽力避免少用。 2、在32位单片机中&#xff0c;u8、u16、u32类型操作起来基本没有什么影响&#xff0c;下图是我做的测试&#xff0c;可能测试不全面&#xff0c;按照当前测试&#xff0c;在32…

Kubernetes_1.27.3_Harbor结合Nacos实战

Nacos 实战 作者:行癫(盗版必究) 一:Nacos简介 1.简介 ​ Nacos是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台;Nacos 致力于帮助您发现、配置和管理微服务;Nacos 提供了一组简单易用的特…

实战 ➾【Red Hat 搭建部署VSFTPd服务】

实战 ➾【Red Hat 搭建部署VSFTPd服务】 &#x1f53b; 前言&#x1f53b; 一、vsFTPd服务部署&#x1f6a5; 1.1 vsFTPd服务安装&#x1f6a5; 1.2 vsFTPd服务的启动与关闭 &#x1f53b; 二、vsFTPd相关配置&#x1f6a5; 2.1 vsFTPd的相关配置文件&#x1f6a5; 2.2 配置匿名…

SpringSecurity(6.1.x版本) 认证,授权,自定义登录,内部机制探讨

SpringSecurity 文章目录 SpringSecurityCSRF跨站请求伪造攻击SFA会话固定攻击XSS跨站脚本攻击开发环境搭建认证直接认证使用数据库认证自定义验证 其他配置自定义登录界面记住我功能 授权基于角色授权基于权限授权使用注解权限判断 内部机制探究授权校验流程安全上下文安全上下…