Python顺序结果、选择结构、循环结构(超详细讲解+多段代码案例)

news2024/11/20 6:26:33

我本微末凡尘,可也心向天空

文章目录

一、顺序结构

二、选择结构

1.if----elif----else语句

2.条件表达式

三、循环结构

1.range函数

 2.while 循环

3. for----in 循环

四、continue、break在循环中的使用


大家好,我是纪宁

今天要介绍的是python的各种简单结构(顺序、if--else 和各种循环)这是Python基础目前的学习进度

一起加油

一、顺序结构

所谓顺序结构,就是按照书写的先后顺序从前到后执行的结构。这类结构最简单,也是最基本的结构。

如下代码,从头开始往下执行。每一条语句都执行

print("——————三界时期的修仙经历——————")
print('\t',"后天")
print('\t',"先天生灵")
print('\t',"紫腹修士")
print('\t',"万象真人")
print('\t',"元神道人")
print('\t',"反虚地仙")
print('\t',"天仙天神")
print("———————————————————————————")

运行结果: 

二、选择结构

1.if----elif----else语句

  自从想入门IT学习后,脑海里面就不断浮现着曾经听到的这样一句话

如果:大学好好学习,好好敲代码的话,就拿到大厂offer,走上人生巅峰

如果:大学不好好学习的话,那么毕业只能回家卖红薯(哭)

  哈哈,知道是谁说的的小伙伴不要说出来哟

  像这样的事件就是一个选择结构,如果大学好好学习,就拿到好offer,否则毕业就只能去卖红薯

用python代码实现如下

Choose=input("你是否要好好学习:Y/N")
if Choose=='Y':
    print("拿到offer")
else:
    print("回家卖红薯")

  从这段代码可以看出if---else语句的语法构成

if  判断条件  :

        执行语句1(前面要加缩进)

else :

        执行语句2(前面要加缩进)

如果判断条件成立的话,就执行语句1,如果不成立的话,就执行语句2 

这里要注意的一点是:只要  if/else  语句后面的语句加了缩进,系统就默认它是  if/else  成立时需要执行的语句,作为执行语句一直执行至无缩进的语句行

当有多个选择时,如考试成绩类的等级划分问题

score=int(input("请输入你的分数"))
if score>=90 and score<=100:
    print("你的等级是A")
elif score >= 80 and score <= 89:
      print("你的等级是B")
elif score >= 70 and score <= 79:
      print("你的等级是C")
elif score >= 60 and score <= 69:
      print("你的等级是D")
else:
    print("你的成绩是不及格")

这里的 elif 就相当于C语言中的 else if

elif 的意思就是,如果 if 的判断条件不成立的话,就再进行一次判断,看是否满足另一个判断条件,如果满足就执行对应的语句

它与 else 的区别是:else的范围是if判断条件不成立的所有情况,而  elif  语句给出了其他选择的情况

哈哈,再举一个例子关于考研的例子

​
Choose=input("你大一大二是否要好好学习:Y/N/我要考研")
if Choose=='Y':
    print("拿到offer")
elif Choose=="我要考研":
    print("考研后好好学习,也拿到offer")
else:
    print("回家卖红薯")

​

多种选择的时候,就要用到  elif  来表达 

2.条件表达式

语句x   if   判断条件   else   语句y

如果判断条件成立,就执行语句x

否则,就执行语句y

三、循环结构

1.range函数

  range函数的作用:在规定范围内生成一个有步长的序列

range(参数1,参数2,参数3)

参数1是范围的起点

参数2是范围的终点

参数3是生成的序列之间的步长,省略时默认为1

 2.while 循环

  while循环通常适用于循环次数不固定的情况

语法格式为

while  条件表达式:

        循环体(条件表达式执行)

当条件表达式成立时,就执行循环体,否则,就退出循环

例1:求 0-100的累加和 

i=0
ret=0
while i<=100:
    ret+=i
    i+=1
print(ret)

 例2:求0-100之间的偶数和

i=1
sum=0
while i<=100:
    if i%2==0:
        sum+=i
    i+=1
print(sum)

3. for----in 循环

for----in循环,其实还真是没有那么好想,但是从C语言的转换过来,也没想的那么难

for----in 循环常用于循环次数已确定的

语法结构:

for  变量  in  序列

        循环体  

其中循环的次数,与序列的元素个数相同,与变量的值无关

  当有变量时,每次执行循环体前,都会将序列元素按顺序赋值给变量

  当不必要变量时,可以将变量位置写为_(下划线),循环依旧会执行序列元素个数次

for----in循环遍历的对象必须是可迭代对象

如打印100----900之间的水仙花数

i=0
wa_fl=0
z=0
for i in range(153,901,1):
    z=i
    wa_fl=0
    while z>0:
        wa_fl+=((z%10)**3)
        z//=10
    if wa_fl==i:
        print(i)

 代码解析:

用for循环控制循环的次数

while循环控制找到这个数的每一位,并进行三次方再加和

每一次for循环都进行一次判断,看是否为水仙花数

四、continue、break在循环中的使用

break是直接跳出当前循环

continue是跳过本次循环体中剩下尚未执行的语句,立即进行下一次的循环条件判定

使用continue时的效果

i=1
while i<=5:
    if i%2==0 :
        i+=1
        continue
    print(i)
    i += 1

使用break时的效果

i=1
while i<=5:
    if i%2==0 :
        i+=1
        break
    print(i)
    i += 1

这个逻辑比较简单一点,大家可以自行研究 

在这里插入图片描述

  博主写了好长时间,如果你能给博主一个免费三连鼓励一下博主的话,那么你真是 泰裤辣

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

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

相关文章

fatal error: ‘type_traits‘ file not found错误解决

错误如下 In file included from ../test_opencv_qt/main.cpp:1: In file included from ../../Qt/6.5.1/android_x86_64/include/QtGui/QGuiApplication:1: In file included from ../../Qt/6.5.1/android_x86_64/include/QtGui/qguiapplication.h:7: In file included from .…

Nginx 限流算法大揭秘

博主介绍&#xff1a; ✌博主从事应用安全和大数据领域&#xff0c;有8年研发经验&#xff0c;5年面试官经验&#xff0c;Java技术专家✌ Java知识图谱点击链接&#xff1a;体系化学习Java&#xff08;Java面试专题&#xff09; &#x1f495;&#x1f495; 感兴趣的同学可以收…

01 | 一条 SQL 查询语句是如何执行的?

以下内容出自 《MySQL 实战 45 讲》 一条 SQL 查询语句是如何执行的&#xff1f; 下面是 MySQL 的基本架构示意图&#xff0c;从中可以清楚地看到 SQL 语句在 MySQL 的各个功能模块中的执行过程。 大体来说&#xff0c;MySQL 可以分为 Server 层和存储引擎层两部分。 Server …

leetcode188. 买卖股票的最佳时机 IV.动态规划-java

买卖股票的最佳时机 IV leetcode188. 买卖股票的最佳时机 IV题目描述 动态规划代码演示 动态规划专题 leetcode188. 买卖股票的最佳时机 IV 来源&#xff1a;力扣&#xff08;LeetCode&#xff09; 链接&#xff1a;https://leetcode.cn/problems/best-time-to-buy-and-sell-st…

DatenLord前沿技术分享 No.28

达坦科技专注于打造新一代开源跨云存储平台DatenLord&#xff0c;通过软硬件深度融合的方式打通云云壁垒&#xff0c;致力于解决多云架构、多数据中心场景下异构存储、数据统一管理需求等问题&#xff0c;以满足不同行业客户对海量数据跨云、跨数据中心高性能访问的需求。在本周…

Reentrantreadwritelock应用和原理

目录 一、介绍 二、应用 三、原理 一、介绍 当读操作远远高于写操作时&#xff0c;这时候使用读写锁让读-读可以并发&#xff0c;提高性能 类似于数据库中的共享锁 select...from...lock in share mode 提供一个数据容器类内部分别使用读锁保护数据的read()方法&#x…

Android 9-SystemUI:(1)启动流程

具体分析(以下代码示例&#xff0c;讲解&#xff0c;都是通过&#xff0c;Android9代码来举例&#xff09; SystemUI,其实是可以看作是一个系统级的服务&#xff0c;也就是SystemUIService, SystemUI的服务启动&#xff0c;要从SystemServer.run()方法入手 main 方法里启动了…

JavaWeb小记—响应对象response

目录 响应对象response的原理图 response——响应对象 响应文本数据 响应字节数据 验证码案例 响应状态码 1.http状态返回代码 1xx&#xff08;临时响应&#xff09; 2.http状态返回代码 2xx &#xff08;成功&#xff09; 3.http状态返回代码 3xx &#xff08;重定向…

2023.6.12-6.18 AI行业周刊(第151期):AI创业项目交付部署,困难和机遇并存

这段时间&#xff0c;工作上项目上的事情&#xff0c;开始进入了一个快车道&#xff0c;很多项目开始并行。所以每天白天的时候&#xff0c;被各种事情填充的很满。 加入华勤后从0到1组建的团队&#xff0c;其实本身也是创业属性&#xff0c;从市场->售前->算法->视频…

Godot 4 源码分析 - 练手 - 和谐共生

今天看到一个微信视频&#xff0c;和谐共生&#xff0c;大概效果如下 https://live.csdn.net/v/306826 研究这么长时间的Godot&#xff0c;今天试试能否实现上述效果 粗看一下&#xff0c;这个效果实现分几步&#xff1a; 1. 画圆&#xff0c;并确定多个圆的位置规律 2. 动…

UE4/5动画系列(2.怎么套模板)

目录 大象套模板 动画同步&#xff08;这个在模板里面开同步&#xff09;&#xff1a; 速度限制&#xff1a; 穿墙问题&#xff1a; 在之前我们已经做了一个基础的模板了&#xff1a; UE4/5动画蓝图模板制作和套模板&#xff08;1.模板制作&#xff09;_多方通行8的博客-C…

【计算机组成原理】总线

目录 一、总线概述 二、总线的分类 三、系统总线的结构 四、总线的性能指标 五、总线仲裁 六、总线操作和定时 七、总线标准 一、总线概述 总线&#xff1a;是一组能为多个部件分时共享信息的传送线路 早期计算机外部设备少时大多采用分散连接方式&#xff0c;不易实现…

【C语言初阶】带你轻松玩转所有常用操作符(1)

君兮_的个人主页 勤时当勉励 岁月不待人 C/C 游戏开发 Hello,这里是君兮_&#xff0c;最近要准备期末复习了&#xff0c;可能更新的就不会那么频繁了&#xff0c;下个星期回复正常更新。 操作符详解1 前言一.操作符的分类二.算数操作符三.移位操作符1.二进制表示的三种形式2.…

【C/C++】构造函数与析构函数

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c系列专栏&#xff1a;C/C零基础到精通 &#x1f525; 给大…

【话题研究】重塑活力:顺应消费需求变化,PC市场需创新、技术驱动和营销策略更优解

话题研究&#xff1a;大众还需要PC吗&#xff1f;PC市场如何走出寒冬&#xff1f; 1️⃣ PC市场进入寒冬的深层原因2️⃣ PC仍具有独特的优势和不可替代性3️⃣ 创新、定制化和用户体验4️⃣ AI、VR时代带来的新出路 市场调研机构 Canalys数据显示&#xff0c;今年一季度&#…

elastic-job-ui在使用druid作为数据库连接池时作业维度报错

问题说明&#xff1a; 我们项目中使用到了elastic-job&#xff0c;然后自己封装了个sdk&#xff0c;方便使用&#xff0c;里面的数据源配置是常用的druidmysql的组合&#xff0c;在操作中&#xff0c;发现elastic-job-ui可视化控制台会报错无法使用。 深究其原因是因为&#…

返回值封装,异常统一处理优雅解决接口所有问题

在项目整体架构设计的时候&#xff0c;我们经常需要做以下工作&#xff1a; 返回值的统一封装处理&#xff0c;因为只有规范好统一的返回值格式&#xff0c;才能不会给接口使用者带来疑惑和方便前端对接口的统一处理。对异常码进行严格规定&#xff0c;什么错误返回什么码制&a…

ShardingSphere-JDBC 5.1.1 分库分表

分库分表解决的问题 mysql的扩展 mysql并不能完全利用高性能服务器的硬件&#xff0c;当cpu超过24个&#xff0c;内存超过128G时&#xff0c;mysql性能处于平缓&#xff0c;不在上升&#xff0c;所以在一个性能强大的服务器上运行多个实例&#xff0c;才更合理 mysql常见的扩…

java.sql.SQLException: No value specified for parameter 6

异常 java.sql.SQLException: No value specified for parameter 6 原因 sql中定义了6个参数&#xff0c;只传了5个参数

设计模式—“领域规则”

在特定领域中,某些变化虽然频繁,但可以抽象为某种规则。这时候,结合特定领域,将问题抽象为语法规则,从而给出在该领域下的一般性解决方案。 典型模式有:Interpreter Interpreter 动机 在软件构建过程中,如果某一个特定领域的问题比较复杂,类似的结构不断重复出现,…