Python流程控制语句-条件判断语句练习及应用详解
文章目录
- 简介
- 条件判断语句(if语句)
- 练习1:判断奇偶数
- 练习2:判断闰年
- 练习3:计算狗的年龄相当于人的年龄
- 练习4:根据成绩奖励
- 练习5:选择婚姻对象
- 小结
- python 学习专栏推荐
- python基础知识(0基础入门)
- python爬虫知识
简介
Python代码在执行时是按照自上向下顺序执行的。通过流程控制语句,可以改变程序的执行顺序,也可以让指定的程序反复执行多次。流程控制语句分成两大类:条件判断语句,循环语句。本节我们先来将条件判断语句。
条件判断语句(if语句)
if语句是Python中非常重要的流程控制语句之一,其基本语法如下:
if 条件表达式:代码块
在执行if语句时,会先对条件表达式进行求值判断,如果为True,则执行if后的代码块,否则跳过代码块不执行。需要注意的是,Python中的代码块是通过缩进来实现的,缩进必须使用相同个数的空格或者Tab键,而且应该始终使用同一种方式。
例如,当我们输入以下代码:
num = 10
if num > 10:print("num比10大")
print("程序已结束")
此时打印结果为"程序已结束",因为num的值为10,不满足if语句中的条件表达式,所以不会执行if后面的代码块。
另外,需要了解的是,在if语句中我们可以使用逻辑运算符and和or来连接多个条件表达式,分别表示所有条件同时满足和只要有一个条件满足即可,例如:
num = 15
if num > 10 and num < 20:print("num比10大,num比20小")
在上面这段代码中,只有当num的值既大于10又小于20时,才会执行print函数中的内容。
最后,if语句也可以用来实现根据不同的条件输出不同的内容,例如:
name = input("请输入用户名:")
if name == "admin":print("欢迎管理员光临")
在上面这段代码中,如果用户输入的用户名为"admin",那么会输出"欢迎管理员光临",否则什么也不执行。
练习1:判断奇偶数
编写一个程序,获取一个用户输入的整数。然后通过程序显示这个数是奇数还是偶数。
参考代码:
num = int(input("请输入一个整数:"))if num % 2 == 0:print("这个数是偶数")
else:print("这个数是奇数")
练习2:判断闰年
编写一个程序,检查任意一个年份是否是闰年。如果一个年份可以被4整除不能被100整除,或者可以被400整除,这个年份就是闰年。
参考代码:
year = int(input("请输入一个年份:"))if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:print("这是闰年")
else:print("这不是闰年")
练习3:计算狗的年龄相当于人的年龄
我家的狗5岁了,5岁的狗相当于多大年龄的人呢?
其实非常简单,狗的前两年每一年相当于人类的10.5岁,然后每增加一年就增加四岁。
那么5岁的狗相等于人类的年龄就应该是10.5+10.5+4+4+4 = 33岁
参考代码:
dog_age = int(input("请输入狗的年龄:"))if dog_age < 0:print("年龄不能为负数")
elif dog_age <= 2:human_age = dog_age * 10.5
else:human_age = 21 + (dog_age - 2) * 4print("狗的年龄相当于人的年龄为:", human_age)
练习4:根据成绩奖励
从键盘输入小明的期末成绩:
当成绩为100时,‘奖励一辆BMW’
当成绩为[80-99]时,‘奖励一台iphone’
当成绩为[60-79]时,‘奖励一本参考书’
其他时,什么奖励也没有
参考代码:
score = int(input("请输入小明的期末成绩:"))if score == 100:print("奖励一辆BMW")
elif 80 <= score <= 99:print("奖励一台iphone")
elif 60 <= score <= 79:print("奖励一本参考书")
else:print("什么奖励也没有")
练习5:选择婚姻对象
大家都知道,男大当婚,女大当嫁。那么女方家长要嫁女儿,当然要提出一定的条件:
高:180cm以上; 富:1000万以上; 帅:500以上;
如果这三个条件同时满足,则:‘我一定要嫁给他’
如果三个条件有为真的情况,则:‘嫁吧,比上不足,比下有余。’
如果三个条件都不满足,则:‘不嫁!’
参考代码:
height = int(input("请输入男方的身高(cm):"))
wealth = int(input("请输入男方的财富(万元):"))
handsome = int(input("请输入男方的颜值(0-100):"))if height >= 180 and wealth >= 1000 and handsome >= 500:print("我一定要嫁给他")
elif height >= 180 or wealth >= 1000 or handsome >= 500:print("嫁吧,比上不足,比下有余。")
else:print("不嫁!")
小结
if语句是Python中用于控制程序流程的重要语句。它的一般形式如下:
if 条件表达式:代码块
if语句的执行过程如下:
- 首先对条件表达式进行求值判断,如果结果为True,则执行if后面的代码块;如果结果为False,则跳过代码块,继续执行后面的语句。
- 代码块是一组通过缩进来区分的语句,它们应该具有相同的缩进级别,通常使用四个空格或一个制表符作为缩进。
- 代码块中的语句会按顺序依次执行,只要满足条件,就会执行所有代码块中的语句;如果条件不满足,代码块中的语句将被跳过。
if语句还可以扩展为if-else语句或if-elif-else语句,用于处理多个条件情况。其语法如下:
- if-else语句:
if 条件表达式:代码块1
else:代码块2
如果条件表达式为True,则执行代码块1;否则,执行代码块2。
- if-elif-else语句:
if 条件表达式1:代码块1
elif 条件表达式2:代码块2
...
else:代码块n
依次判断条件表达式1、条件表达式2,直到找到第一个为True的条件,执行相应的代码块。如果所有条件都为False,则执行最后的else代码块。
在if语句中,我们还可以使用逻辑运算符and和or来组合多个条件表达式。and表示所有条件必须同时满足,or表示只要有一个条件满足即可。
总结起来,if语句是用于根据条件选择性地执行特定的代码块。它是控制程序流程的重要工具,能够使程序根据不同的情况做出相应的响应。
python 学习专栏推荐
python基础知识(0基础入门)
【python基础知识】0.print()函数
【python基础知识】1.数据类型、数据应用、数据转换
【python基础知识】2.if条件判断与条件嵌套
【python基础知识】3.input()函数
【python基础知识】4.列表和字典
【python基础知识】5.for循环和while循环
【python基础知识】6.布尔值和四种语句(break、continue、pass、else)
【python基础知识】7.实操-用Python实现“文字PK”小游戏(一)
【python基础知识】7.实操-用Python实现“文字PK”小游戏(二)
【python基础知识】8.编程思维:如何解决问题-思维篇
【python基础知识】9.函数的定义和调用
【python基础知识】10.用函数编写程序 - 实操篇
【python基础知识】10.用Python实现石头剪刀布小游戏-函数实操篇
【python基础知识】11.如何debug -常见报错原因及排查思路 - 思维篇
【python基础知识】12.类与对象(一)
【python基础知识】12.类与对象(二)
【python基础知识】13.类与对象(三)
【python基础知识】13.类与对象(四)
【python基础知识】14.图书管理系统的搭建(类与对象实操)
【python基础知识】15.编码基础知识
【python基础知识】16.文件读写基础及操作
【python基础知识】16.“古诗默写题”的python实现(文件读写和编码-实操篇)
【python基础知识】17.模块的概念以及如何引入
【python基础知识】18.实操-使用python自动群发邮件
【python基础知识】19.产品思维以及流程图的使用 - 思维篇
【python基础知识】20.“午饭吃什么”的python实现(产品思维-实操篇)
【python基础知识】21.高效偷懒的正确打开方式-毕业篇
【python文件处理】CSV文件的读取、处理、写入
【python文件处理】Excel自动处理(使用 openpyxl)
【python文件处理】-excel格式处理
python爬虫知识
【python爬虫】1.爬虫基础知识
【python爬虫】2.网页基础知识
【python爬虫】3.爬虫初体验(BeautifulSoup解析)
【python爬虫】4.爬虫实操(菜品爬取)
【python爬虫】5.爬虫实操(歌词爬取)
【python爬虫】6.爬虫实操(带参数请求数据)
【python爬虫】7.爬到的数据存到哪里?
【python爬虫】8.温故而知新
【python爬虫】9.带着小饼干登录(cookies)
【python爬虫】10.指挥浏览器自动工作(selenium)
【python爬虫】11.让爬虫按时向你汇报
【python爬虫】12.建立你的爬虫大军
【python爬虫】13.吃什么不会胖(爬虫实操练习)
【python爬虫】14.Scrapy框架讲解
【python爬虫】15.Scrapy框架实战(热门职位爬取)
【python爬虫】16.爬虫知识点总结复习
相关文章:
Python流程控制语句-条件判断语句练习及应用详解
文章目录 简介条件判断语句(if语句)练习1:判断奇偶数练习2:判断闰年练习3:计算狗的年龄相当于人的年龄练习4:根据成绩奖励练习5:选择婚姻对象 小结 python 学习专栏推荐python基础知识ÿ…...
(十)ElasticSearch高级使用【别名,重建索引,refresh操作,高亮查询,查询建议】
1.别名使用 1)别名作用 在开发中,随着业务需求的迭代,较⽼的业务逻辑就要⾯临更新甚⾄是重构,⽽对于es来说,为了 适应新的业务逻辑,可能就要对原有的索引做⼀些修改,⽐如对某些字段做调整&…...
基于小波神经网络的中药材价格预测,基于ANN的小波神经网络中药材价格预测
目标 背影 BP神经网络的原理 BP神经网络的定义 BP神经网络的基本结构 BP神经网络的神经元 BP神经网络的激活函数, BP神经网络的传递函数 小波神经网络(以小波基为传递函数的BP神经网络) 代码链接:基于小波神经网络的中药材价格预测,ANN小波神经网络中药材价格预测资源-CS…...
thinkPhp5返回某些指定字段
//去除掉密码$db new UserModel();$result $db->field(password,true)->where("username{$params[username]} AND password{$params[password]}")->find(); 或者指定要的字段的数组 $db new UserModel();$result $db->field([username,create_time…...
基于docker环境的tomcat开启远程调试
背景: Tomcat部署在docker环境中,使用rancher来进行管理,需要对其进行远程调试。 操作步骤: 1.将容器中的catalina.sh映射出来,便于对其修改,添加远程调试相关参数。 注意:/data/produce2201…...
ELK日志框架图总结
ELK日志框架图总结 本文目录 ELK日志框架图总结Elastic Stack介绍模式分层图beatselasticsearchkibana模式logstashelasticsearchkibana模式beatslogstashelasticsearchkibana模式beats缓存/消息队列logstashelasticsearchkibana模式elkspringboot Elastic Stack介绍 官网&…...
go 每天定时任务 --chatGPT
问:clearLog(hour,cmds),定时执行shell 命令,hour 为每天的几点,cmds 为linux命令数组字符串(如 1,{"ls","cd"}) gpt: 要编写一个 Go 函数 clearLog,该函数可…...
Lightdb 23.3 plorasql函数支持DML
开篇立意 oracle在函数中使用dml语句时,有两者情况。即:(1)直接使用select调用该函数;(2)在匿名块中调用该函数。 针对第一种情况我们测试一下 简单的函数: create table nested_t…...
电容笔值不值得买?开学季比较好用的电容笔
眼看着新学期即将到来,到底应该选择什么样的电容笔?一款原装的苹果Pencil,就卖到了将近一千块,这对于很多人来说,都是一个十分昂贵的价格。事实上,由于平替电容笔的价格非常便宜,只要一二百元就…...
Mybatis 框架 ( 五 ) 分页
4.6.分页 Mybatis-plus 内置分页插件, 并支持多种数据库 官网 : 分页插件 | MyBatis-Plus (baomidou.com) 4.6.1.增加拦截器 通过 MapperScan 指定 mapper接口的路径 import com.baomidou.mybatisplus.annotation.DbType; import com.baomidou.mybatisplus.extension.plug…...
Python模板注入
概念 发生在使用模板引擎解析用户提供的输入时。模板注入漏洞可能导致攻击者能够执行恶意代码或访问未授权的数据。 模板引擎可以让(网站)程序实现界面与数据分离,业务代码与逻辑代码分离。即也拓宽了攻击面,注入到模板中的代码可…...
Java常用的设计模式
单例模式(Singleton Pattern): 确保一个类只有一个实例,并提供一个全局访问点。示例:应用程序中的配置管理器。 工厂模式(Factory Pattern): 用于创建对象的模式,封装对象的创建过程。示例&…...
攻防世界-WEB-Web_php_include
打开靶机 通过代码审计可以知道,存在文件包含漏洞,并且对伪协议php://进行了过滤。 发现根目录下存在phpinfo 观察phpinfo发现如下: 这两个都为on 所以我们就可以使用data://伪协议 payload如下: - ?pagedata://text/plain,…...
angular中多层嵌套结构的表单如何处理回显问题
最近在处理angular表单时,有一个4层结构的表单。而且很多元素时动态生成,如下: this.validateFormthis.fb.group({storeId: ["test12"],storeNameKey:[],config:this.fb.group({ tableSize:this.fb.group({toggle:[false],groupSiz…...
Leetcode646. 最长数对链
Every day a Leetcode 题目来源:646. 最长数对链 解法1:动态规划 定义 dp[i] 为以 pairs[i] 为结尾的最长数对链的长度。 初始化时,dp 数组需要全部赋值为 1。 计算 dp[i] 时,可以先找出所有的满足 pairs[i][0]>pairs[j]…...
Windows 下安装NPM
第一步: 下载node.js的windows版 当前最新版本是https://nodejs.org/dist/ 第二步:设置环境变量 把node.exe所在目录加入到PATH环境变量中。 配置成功后可以在CMD中通过node --version 看到node.js对应的版本号 C:\Users\fn>node --version v6.10.2 第三步: 安装git 直接…...
【ARM CoreLink 系列 2 -- CCI-400 控制器简介】
文章目录 CCI-400 介绍DVM 机制介绍DVM 消息传输过程TOKEN 机制介绍 下篇文章:ARM CoreLink 系列 3 – CCI-550 控制器介绍 CCI-400 介绍 CCI(Cache Coherent Interconnect)是ARM 中 的Cache一致性控制器。 CCI-400 将 Interconnect 和coh…...
LeetCode(力扣)77. 组合Python
LeetCode77. 组合 题目链接代码 题目链接 https://leetcode.cn/problems/combinations/description/ 代码 class Solution:def combine(self, n: int, k: int) -> List[List[int]]:result []return self.backtracking(n, k, 1, [], result)def backtracking(self, n, k…...
uniapp h5 微信缓存,解决版本更新还是旧版本
文章目录 一、微信缓存是什么?二、如何解决1.打包入口文件解决2.给请求url加时间戳3.给打包的js文件添加时间戳并修改打包后的css文件夹 总结 一、微信缓存是什么? 微信缓存是指微信客户端为了提高用户的使用体验,会在用户使用微信过程中将一…...
Nacos——Distro一致性协议
Nacos——Distro一致性协议 1. 理论 一致性一直都是分布式系统中绕不开的话题。根据CAP中,要么CP(保证强一致性牺牲可用性),要么AP(最终一致性来保证可用性),在市面上也有几种一致性算法,像Paxos,Raft,Zoo…...
罚到肉疼!2026“两个细则”大考:你的风电场还在用“注定不准”的方法做预测吗?
当95%置信概率成为国家标准,单点预测的时代彻底终结2026年的春天,对于新能源发电企业而言,比以往任何时候都要“寒冷”。山东、四川等地新版“两个细则”正式施行,国家发改委“136号文”深入落地,新能源全面进入电力市…...
告别低效收藏:MarkDownload让网页内容保存效率提升300%
告别低效收藏:MarkDownload让网页内容保存效率提升300% 【免费下载链接】markdownload A Firefox and Google Chrome extension to clip websites and download them into a readable markdown file. 项目地址: https://gitcode.com/gh_mirrors/ma/markdownload …...
GStreamer性能优化指南:在Jetson TX2上实现4K视频低延迟处理(基于NVMM内存)
GStreamer性能优化指南:在Jetson TX2上实现4K视频低延迟处理(基于NVMM内存) 在嵌入式视觉和实时视频处理领域,NVIDIA Jetson TX2凭借其强大的GPU和专用硬件加速单元,成为工业级应用的理想选择。但要将这块开发板的性能…...
别再硬编码了!Qt QTabBar标签宽度自适应窗体的5种实战方案对比(附完整代码)
Qt QTabBar标签宽度自适应窗体的5种实战方案深度评测 每次看到Qt界面中那些挤在一起或稀疏分布的标签页,总让人想起超市货架上摆放不齐的商品——既影响美观又降低使用效率。作为中级Qt开发者,你一定遇到过这样的困境:当窗体尺寸变化时&#…...
用LDA模型挖掘微信聊天秘密:Gensim实战教程(含pyLDAvis可视化)
用LDA模型挖掘微信聊天秘密:Gensim实战教程(含pyLDAvis可视化) 微信聊天记录中隐藏着大量有价值的信息,从日常对话到重要决策,这些文本数据就像一座未被充分挖掘的金矿。本文将带你用Python中的Gensim库构建LDA主题模型…...
别再用ls了!从Linux文件系统卡顿,看透MinIO多级目录的性能陷阱与正确用法
从Linux文件系统卡顿到MinIO性能陷阱:高效查询的工程哲学 当你在Linux终端输入ls命令后,系统突然卡死——这种经历对许多开发者来说并不陌生。但很少有人意识到,同样的性能陷阱正潜伏在MinIO这类对象存储系统的日常使用中。本文将揭示文件系…...
GPT-5.4 Pro接入Java!百万上下文+电脑操控,Spring AI集成教程
文章目录前言一、先搞清楚你在驯服什么野兽二、Spring AI Alibaba是什么鬼?核心优势三、环境准备:别在JDK版本上栽跟头四、基础对话:先让AI开口说话五、百万上下文的正确打开方式六、Computer Use:让AI真的动起来实际应用场景七、…...
3步搞定:如何让VR视频在普通屏幕上完美播放
3步搞定:如何让VR视频在普通屏幕上完美播放 【免费下载链接】VR-reversal VR-Reversal - Player for conversion of 3D video to 2D with optional saving of head tracking data and rendering out of 2D copies. 项目地址: https://gitcode.com/gh_mirrors/vr/V…...
不止于公式:用国民技术N32G45x定时器实现精准时间片调度(附代码)
不止于公式:用国民技术N32G45x定时器实现精准时间片调度(附代码) 在嵌入式系统开发中,定时器是最基础也最强大的外设之一。对于国民技术N32G45x系列微控制器而言,其丰富的定时器资源(TIM2/3/4等)…...
告别蓝牙!用STM32F103和NRF24L01搭建低成本2.4G无线通信,实测传输距离与稳定性
STM32F103与NRF24L01构建高性能2.4G私有通信系统实战指南 在物联网设备爆发式增长的今天,无线通信模块的选择成为硬件开发者面临的首要难题。面对市面上琳琅满目的蓝牙、Wi-Fi和私有协议模块,如何根据项目需求选择最具性价比的解决方案?本文将…...
