Python学习中进行条件判断(if, else, elif)

news2024/11/15 14:02:48

条件判断是编程中必不可少的一部分,它让程序可以根据不同的条件执行不同的代码块。在Python中,主要使用ifelifelse语句来实现条件判断。

基本语法

在Python中,条件判断的基本语法如下:

if condition:
    # 当condition为True时,执行这段代码
    pass
elif another_condition:
    # 当condition为False且another_condition为True时,执行这段代码
    pass
else:
    # 当上述所有条件都为False时,执行这段代码
    pass
if 语句

if语句用来测试一个条件。如果条件为True,则执行相应的代码块;否则,跳过该代码块。例如:

age = 18
if age >= 18:
    print("You are an adult.")

在这个例子中,如果变量age的值大于或等于18,则会输出"You are an adult."。

elif 语句

elifelse if的缩写,用于测试另外一个条件。elif只能在if语句之后使用,可以有多个elif条件。例如:

age = 15
if age >= 18:
    print("You are an adult.")
elif age >= 13:
    print("You are a teenager.")
else:
    print("You are a child.")

在这个例子中,程序会先检查age >= 18是否为True,如果是则输出"You are an adult.",如果不是则检查age >= 13是否为True,如果是则输出"You are a teenager.",否则输出"You are a child."。

else 语句

else语句在所有条件都不满足时执行相应的代码块。一个if语句块中最多只能有一个else语句,并且它必须放在所有ifelif语句的最后。例如:

age = 10
if age >= 18:
    print("You are an adult.")
elif age >= 13:
    print("You are a teenager.")
else:
    print("You are a child.")

在这个例子中,由于age小于13,所有条件都不满足,所以程序会执行else语句,输出"You are a child."。

嵌套条件判断

有时我们需要在一个条件判断中再进行一个条件判断,这种情况称为嵌套条件判断。例如:

age = 20
if age >= 18:
    print("You are an adult.")
    if age >= 65:
        print("You are a senior.")
    else:
        print("You are not a senior yet.")
else:
    print("You are not an adult.")

在这个例子中,如果age大于或等于18,程序会进一步检查是否大于或等于65。如果是,则输出"You are a senior.",否则输出"You are not a senior yet."。如果age小于18,程序直接输出"You are not an adult."。

使用布尔操作符

在条件判断中,我们可以使用布尔操作符来组合多个条件。常用的布尔操作符有andornot

and 操作符

and操作符用于连接两个条件,只有当两个条件都为True时,整个条件才为True。例如:

age = 20
has_id = True

if age >= 18 and has_id:
    print("You can enter the club.")
else:
    print("You cannot enter the club.")

在这个例子中,只有当age大于或等于18且has_idTrue时,程序才会输出"You can enter the club."。

or 操作符

or操作符用于连接两个条件,只要其中一个条件为True,整个条件就为True。例如:

age = 20
has_id = False

if age >= 18 or has_id:
    print("You can enter the club.")
else:
    print("You cannot enter the club.")

在这个例子中,只要age大于或等于18,或者has_idTrue,程序就会输出"You can enter the club."。

not 操作符

not操作符用于取反,即将True变为False,将False变为True。例如:

is_raining = False

if not is_raining:
    print("You don't need an umbrella.")
else:
    print("You need an umbrella.")

在这个例子中,由于is_rainingFalsenot is_rainingTrue,所以程序会输出"You don't need an umbrella."。

多重条件判断

在实际应用中,我们常常需要检查多个条件。这可以通过多个elif语句来实现。例如:

score = 85

if score >= 90:
    print("Grade: A")
elif score >= 80:
    print("Grade: B")
elif score >= 70:
    print("Grade: C")
elif score >= 60:
    print("Grade: D")
else:
    print("Grade: F")

在这个例子中,程序会依次检查每个条件,直到找到一个满足的条件,然后执行相应的代码块。如果score大于或等于90,输出"Grade: A";如果大于或等于80但小于90,输出"Grade: B",以此类推。

条件表达式

Python还提供了一种简洁的条件表达式(也称为三元运算符),它允许在一行代码中实现简单的条件判断。其语法如下:

value_if_true if condition else value_if_false

例如:

age = 20
status = "adult" if age >= 18 else "minor"
print(status)

在这个例子中,如果age大于或等于18,status的值为"adult";否则,status的值为"minor"。

实战案例

下面通过几个实际案例来展示如何在编程中使用条件判断。

案例一:判断用户输入的数字是奇数还是偶数
number = int(input("Enter a number: "))

if number % 2 == 0:
    print("The number is even.")
else:
    print("The number is odd.")

在这个例子中,程序首先读取用户输入的数字,并将其转换为整数。然后通过取模运算number % 2来判断该数字是奇数还是偶数。如果结果为0,说明是偶数,否则是奇数。

案例二:根据用户输入的分数判断成绩等级
score = int(input("Enter your score: "))

if score >= 90:
    grade = "A"
elif score >= 80:
    grade = "B"
elif score >= 70:
    grade = "C"
elif score >= 60:
    grade = "D"
else:
    grade = "F"

print("Your grade is:", grade)

在这个例子中,程序根据用户输入的分数,判断并输出对应的成绩等级。

案例三:根据用户输入的年份判断是否为闰年
year = int(input("Enter a year: "))

if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
    print(year, "is a leap year.")
else:
    print(year, "is not a leap year.")

在这个例子中,程序根据闰年的判断规则,判断并输出用户输入的年份是否为闰年。

总的来说,条件判断是编程中的基本构建块,它使程序能够根据不同的条件执行不同的代码。掌握ifelifelse语句,以及布尔操作符的使用,对于编写复杂的程序至关重要。

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

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

相关文章

JAVA之(static关键字、final关键字)

JAVA之(static关键字、final关键字) 一、 static关键字1、静态变量2、静态方法3、 静态代码块4、例子 二、final关键字1、final修饰类2、 final修饰方法3、修饰变量 一、 static关键字 1、静态变量 private static String str1“staticProperty”2、静…

【chatgpt消费者偏好】是什么驱动了游客持续旅游意愿?推文分享—2024-07-08

今天推文的主题是【chatgpt&消费者意愿】 第一篇:文章主要研究了什么因素驱动旅游者继续使用ChatGPT进行旅行服务,并从人类拟态的角度探讨了旅游者对ChatGPT的感知和使用意图。第二篇:本文探讨了ChatGPT-4在生成针对TripAdvisor上发布的…

信息技术课堂上如何有效防止学生玩游戏?

防止学生在信息技术课堂上玩游戏需要综合运用教育策略和技术手段。以下是一些有效的措施,可以用来阻止或减少学生在课堂上玩游戏的行为: 1. 明确课堂规则 在课程开始之初,向学生清楚地说明课堂纪律,强调不得在上课时间玩游戏。 制…

Unity分享一个简单的3D角色漫游脚本

1.新建一个场景,并创建一脚本 2.给场景中的地面添加一个Ground标签 3.给刚刚新建的脚本编写代码 using UnityEngine;public class PlayerMovement : MonoBehaviour {public float moveSpeed 5f; // 移动速度public float jumpForce 5f; // 跳跃力量public float …

antdPro的使用

antdPro封装了很多高级组件&#xff0c;很大程度的节约了开发时间 在这记录一下&#xff0c;初次使用&#xff0c;常用的一些属性 <ModalFormtitle"编辑使用记录"open{visible}onFinish{onSave}onOpenChange{onOpenChange}initialValues{updateRecord}width{40%}…

Hack The Box-PermX

总体思路 CVE-2023-4220->敏感信息收集->符号链接攻击 信息收集&端口利用 nmap -sSVC permx.htbStarting Nmap 7.94SVN ( https://nmap.org ) at 2024-07-07 21:16 EDT Nmap scan report for permx.htb Host is up (0.24s latency). Not shown: 998 closed tcp po…

leetcode:编程基础0到1

文章目录 交替合并字符串str.length();StringBuilder类型 ,toString()append() &#xff0c;chatAt()题目描述 交替合并字符串 str.length(); 输出字符串str的长度 StringBuilder类型 ,toString() append() &#xff0c;chatAt() 题目描述 class Solution {public String …

位置编码的具体计算方式(公式解释)

公式 (10.6.2) 描述了位置编码的具体计算方式&#xff0c;这种位置编码基于正弦和余弦函数&#xff0c;用于在自注意力机制中引入位置信息。下面我们详细解释公式和代码。 公式 (10.6.2) 公式 (10.6.2) 的目的是为输入序列中的每个词元添加一个位置编码&#xff0c;以保留序列…

下载程序到仿真

第一步&#xff0c;新建工程 第二步&#xff0c;设备组态 第三步&#xff0c;地址分配 需要注意的是&#xff0c;分配地址的范围&#xff0c;是CPU决定的。 关于常见数据类型 下载与仿真 一般安装好博图会自带。 PLCSIM/PLCSIM Advanced PLCSIM普通仿真 PLCSIM Advanced高级…

绝地求生PUBG没有开始游戏按钮的解决办法

绝地求生是一款特别热门的战术竞技型射击类游戏&#xff0c;游戏中玩家需要在游戏地图上收集各种资源&#xff0c;并在不断缩小的安全区域内持武器对抗其他玩家&#xff0c;让自己生存到最后。当游戏最后场上只剩下一支队伍的时候即可获得游戏胜利。然而一些玩家在游玩绝地求生…

MICCAI 2024Centerline Boundary Dice Loss for Vascular Segmentation

MICCAI 2024 Centerline Boundary Dice Loss for Vascular Segmentation MICCAI 2024Centerline Boundary Dice Loss for Vascular Segmentation中心线边界Dice损失用于血管分割**摘要**:1. 引言相关工作&#xff1a; 2. 方法预备知识Dice的变化 3 实验3.1 数据集3.2 设置3.3 结…

autocad软件许可优化解决方案

Autocad软件介绍 Autodesk 是世界领先的设计软件和数字内容创建公司&#xff0c;用于建筑设计、土地资源开发、生产、公用设施、通信、媒体和娱乐。始建于 1982 年&#xff0c;Autodesk 提供设计软件、Internet 门户服务、无线开发平台及定点应用&#xff0c;帮助遍及 150 多个…

uniapp 表格,动态表头表格封装渲染

1.接口表格数据&#xff1a; {"headers": [{"label": "实例名","name": "v1","order": 1,"hide": false,"dateTypeValue": null},{"label": "所属科室","name&quo…

【Java伴学笔记】Day-01 命令行|环境|编译解释运行|Java的相关分支|Java的特性|字面量

一、关于命令行 图形化界面的缺点 需要加载图片等一系列资源 效率较低 命令行 CMDMicrosoft Learn-CMDWindows CMD常用命令大全&#xff08;值得收藏&#xff09; 二、环境 什么是JDK JDK是Java Development Kit的缩写&#xff0c;意为Java开发工具包。它是一个用于开发Java应用…

分类下两列一组统计

表格 A 列是分类&#xff0c;后面是 2N 个 key-value 列 ABCDEFG1CountryLabel1Count1Label2Count2Label3Count32USA10B9C83USD9C8A74USC8D7B65USA7C6B56CAA10B9C87CAD9C8A78CAC8D7B69INA10C9B810IND9A8B711INA8D7B6 需要对分类、key 分组&#xff0c;对 value 求和&#xff…

【Qt】Qt Creator初使用

目录 一. 创建新项目 二. 认识Qt Creator界面 2.1 main.cpp 代码解释 2.2 mywidget.h 代码解释 2.3 mywidget.cpp 代码解释 2.4 form file —— Forms里的mywidget.ui 2.5 .pro文件 2.6 编译生成的中间文件 Qt Creator是一个跨平台集成开发环境(IDE)&#xff0c;专门用…

Vue3使用markdown编辑器之Bytemd

官网地址&#xff1a;https://bytemd.js.org/playground GitHub地址&#xff1a;https://github.com/bytedance/bytemd ByteMD 是字节跳动出品的富文本编辑器&#xff0c;功能强大&#xff0c;可以免费使用&#xff0c;而且支持很多掘金内置的主题&#xff0c;写作体验很棒。 …

Android约束布局的概念与属性(1)

目录 1&#xff0e;相对定位约束2&#xff0e;居中和偏移约束 约束布局&#xff08;ConstraintLayout&#xff09;是当前Android Studio默认的布局方式&#xff0c;也是最灵活的一种布局方式。约束布局推荐使用所见即所得的模式进行布局&#xff0c;约束布局的大部分布局可以通…

CentOS7下安装Doris

Doris简介 Apache Doris 是一款基于 MPP 架构的高性能、实时的分析型数据库&#xff0c;以高效、简单、统一的特点被人们所熟知&#xff0c;仅需亚秒级响应时间即可返回海量数据下的查询结果&#xff0c;不仅可以支持高并发的点查询场景&#xff0c;也能支持高吞吐的复杂分析场…

SpringBoot升级引发一个循环依赖支持问题

最近有个重要的项目要求使用带自定义表单的工作流。要求灵活配置流程。选用了较稳定的Flowable6.72版本。但面临着一个问题。教材上,Flowable6.7.2要求匹配的SpringBoot版本是2.6.2.需要对项目的Boot版本从2.3releae升到2.6.2,其他还好。不存在有类编译问题或类找不到问题。就是…