百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

Python 条件判断教程

off999 2025-05-11 17:42 33 浏览 0 评论

Let's dive in!


1. 基本的 if 语句 (if Statement)

在 Python 中,if 语句用来根据条件执行代码块。当条件为 True(真)时,代码块将被执行;否则,代码块会被跳过。
(Here, if is used to execute a block of code when the condition is true.)

示例代码:

age = 20
if age >= 18:  # 如果年龄大于等于18(if age is greater than or equal to 18)
    print("你已经成年啦!")  

2. if-else 语句 (if-else Statement)

当我们需要在条件不满足时执行其他代码,可以使用 else 分支。
(execute an alternative block of code when the condition is false.)

示例代码:

score = 75
if score >= 60:  # 如果成绩大于等于60(if score is 60 or above)
    print("恭喜你,及格啦!")  # 及格时打印(print message on passing)
else:
    print("很遗憾,没及格哦!")  # 未及格时打印(print message on failing)

3. if-elif-else 语句 (if-elif-else Statement)

当有多个条件需要判断时,使用 elif(else if)可以处理多个分支
(Use elif to handle multiple conditions.)

示例代码:

temperature = 30
if temperature > 35:  # 如果温度大于35度(if temperature is above 35°C)
    print("天气太热了!")  # 提示天气热(indicate it's too hot)
elif temperature >= 25:  # 如果温度在25到35度之间(if temperature is between 25°C and 35°C)
    print("天气很舒适!")  # 提示天气舒适(indicate it's comfortable)
else:
    print("天气比较凉爽。")  # 温度低时提示(indicate it's cool)

4. 嵌套条件判断 (Nested Conditional Statements)

有时,我们需要在一个条件语句中再嵌套其他条件
(Sometimes, nested conditions are required within an if statement.)

示例代码:

number = 8
if number > 0:  # 判断数字是否大于0(if the number is positive)
    if number % 2 == 0:  # 判断是否为偶数(if it is even)
        print("正偶数!")  # 正偶数提示(print message for positive even number)
    else:
        print("正奇数!")  # 正奇数提示(print message for positive odd number)
else:
    print("非正数。")  # 负数或零提示(print message for non-positive number)

5. 逻辑运算符:and、or、not (Logical Operators: and, or, not)

条件判断中,我们经常需要结合多个条件。Python 提供了三种逻辑运算符:
(When combining multiple conditions, Python provides logical operators.)

  • and(并且): 当所有条件都为 True 时,整体表达式为 True
    (Returns True if both conditions are true.)
  • or(或者): 当至少一个条件为 True 时,整体表达式为 True
    (Returns True if at least one condition is true.)
  • not(非): 用于取反,将 True 变为 False,反之亦然。
    (Negates the truth value.)

示例代码:

age = 22
has_ticket = True
if age >= 18 and has_ticket:  # 年龄大于等于18并且有票(if age is at least 18 and has a ticket)
    print("欢迎入场!")  # 满足条件欢迎入场(welcome message)
else:
    print("入场条件不满足。")  # 条件不满足提示(display error message)

6. 条件表达式(Conditional Expressions / Ternary Operator)

Python 还支持单行条件表达式,可以让代码更加简洁
(one-line conditional expressions for concise code.)

示例代码:

result = "及格" if score >= 60 else "不及格"  # 条件表达式(ternary operator)
print(result)  # 输出结果


注意事项 (Tips & Caveats for Conditional Statements)

  1. 缩进非常关键 (Indentation Matters)
    Python 使用缩进来标识代码块,缩进不当会导致语法错误或逻辑错误。

  2. 正确使用比较运算符 (Comparison Operators)
    使用 == 进行相等判断,而不是 =(= 用于赋值)。
    注意区分 is 和 ==。is 用于判断两个对象是否为同一个对象,而 == 判断的是值是否相等。
a = [1, 2, 3] b = [1, 2, 3] 
print(a == b) # True,因为值相同 
print(a is b) # False,因为是不同的对象
  1. 条件表达式的书写习惯 (Style in Conditional Expressions)
  • 当条件较复杂时,建议使用括号明确表达式的优先级,以避免歧义。
  • 切勿误写为 if a == b or c:,正确写法应为 if a == b or a == c:(或使用括号明确优先级)。
  • 提示:对于多个条件,逻辑运算符 and、or 的组合一定要注意各条件之间的关系。

  1. 短路求值Short-Circuit Evaluation
  • 在使用 and 和 or 时,Python 会进行短路求值:
  • and 会在遇到第一个为 False 的条件时停止求值。
  • or 会在遇到第一个为 True 的条件时停止求值。

  1. 条件中的非布尔值 (Non-Boolean Values in Conditions)
  • Python 会自动将非布尔值转换为布尔值。
  • 比如,空字符串 ""、空列表 []、数字 0 都会被视为 False
    非空的字符串、列表、非零数字被视为 True
value = "" 
if value: # 空字符串会被当作 False 
    print("非空") 
else: 
    print("空字符串") # 正确输出:空字符串
  1. 避免过于复杂的条件判断 (Avoid Overly Complex Conditions)
  • 当条件判断逻辑过于复杂时,可以考虑拆分成多个简单的判断,或使用函数来封装判断逻辑,从而提高代码可读性与维护性。
  • 建议:编写清晰、易懂的条件判断不仅能减少 bug,也能让其他开发者更快理解你的代码。

7. 总结与拓展

通过以上示例,我们了解了 Python 中常见的条件判断语句:

  • if 语句(Basic decision-making)
  • if-else 语句(Binary decisions)
  • if-elif-else 语句(Multiple conditions)
  • 嵌套条件判断(Nested conditions)
  • 逻辑运算符(Logical operators)
  • 条件表达式(Ternary operator)

这些知识点构成了 Python 程序中不可或缺的部分,为你的编程逻辑打下坚实的基础。记住,多练习,多尝试,你会发现条件判断让你的代码充满了无限可能!

如果你觉得这篇教程对你有帮助,别忘了点赞、分享并关注我哦~ 让我们一起在 Python 的世界里不断探索与成长!

Happy coding!

相关推荐

Kubernetes 核心概念全景图:Pod、Node、Cluster、Control Plane 等

想真正读懂Kubernetes的底层运作,你必须理解它的“权力架构”。Pod是什么?Node是什么?ControlPlane又是做什么的?它们之间有什么关系?怎么协同工作?本篇带你构建一个...

Helm 实战:用 Helm 部署一个 Nginx 应用

这一篇,我们将动手实战:用Helm从零部署一个Nginx应用,并掌握HelmChart的结构和参数化技巧。一、准备环境在开始之前,你需要确保环境中具备以下工具:已部署的Kubernet...

从零开始:如何在 Linux 上搭建 Nginx + Node.js 高性能 Web 服务

在现代互联网服务架构中,Nginx+Node.js已成为轻量级、高性能网站的首选组合。本文将带你从零开始,一步步搭建一个高并发、高可用的Web服务平台,让新手也能轻松掌握生产级部署思路。一、...

NetBox 最新版 4.4.1 完整安装指南

NetBox最新版4.4.1完整安装指南(修正版)by大牛蛙1.系统准备#关闭SELinux和防火墙(仅测试环境)systemctldisable--nowfirewalldse...

Termux 安装 linux 宝塔面板,搭建 Nginx+PHP+Mysql web 网站环境

Termux安装linux宝塔面板,搭建Nginx+PHP+Mysqlweb服务环境,解决启动故障奶妈级教程1.到宝塔面板官网:https://www.bt.cn/new/download...

OpenEuler系统安装Nginx安装配置_openwrt安装nginx

NginxWEB安装时可以指定很多的模块,默认需要安装Rewrite模块,也即是需要系统有PCRE库,安装Pcre支持Rewrite功能。如下为安装NginxWEB服务器方法:源码的路径,而不是编...

多级缓存架构实战:从OpenResty到Redis,打造毫秒级响应系统

在传统的Web架构中,当用户发起请求时,应用通常会直接查询数据库。这种模式在低并发场景下尚可工作,但当流量激增时,数据库很容易成为性能瓶颈。多级缓存通过在数据路径的不同层级设置缓存,可以显著降低数据库...

如何使用 Nginx 缓存提高网站性能 ?

快速加载的站点提供了更好的用户体验并且可以拥有更高的搜索引擎排名。通过Nginx缓存提高你的网站性能是一个有效的方法。Nginx是一个流行的开源web服务器,也可以作为web服务器反向代...

如何构建企业级Docker Registry Server

很多人问我,虚拟机镜像和docker镜像的区别是什么?其实区别非常明显,我们可以通过阅读Dockerfile文件就可以知道这个镜像都做了哪些操作,能提供什么服务;但通过虚拟机镜像,你能一眼看出来虚拟机...

如何解决局域网SSL证书问题?使用mkcert证书生成工具轻松搞定

“局域网里弹出‘不安全’红锁,老板就在身后盯着演示,那一刻只想原地消失。”别笑,九成前端都经历过。自签证书被Chrome标红,客户以为网站被黑,其实只是缺一张被信任的证。mkcert把这事从半小时缩到...

Docker 安全与权限控制:别让你的容器变成“漏洞盒子”

在享受容器带来的轻量与灵活的同时,我们也必须面对一个现实问题:安全隐患。容器并不是天然安全,错误配置甚至可能让攻击者“越狱”入侵主机!本篇将带你从多个层面强化Docker的安全防护,构建真正可放心...

Kubernetes生产级管理指南(2025版)

在云原生技术持续演进的2025年,Kubernetes已成为企业数字化转型的核心引擎。然而,生产环境中的集群管理仍面临基础设施配置、安全漏洞、运维复杂度攀升等挑战。本文将结合最新行业实践,从基础设施即...

云原生工程师日常使用最多的工具和100条高频命令

在云原生时代,工程师不仅要熟悉容器化、编排和服务网格,还要掌握大量工具和命令来进行日常运维与开发。本文将从工具篇和命令篇两个角度,详细介绍云原生工程师每天都会用到的核心技能。一、云原生工程师常...

用 Jenkins 实现自动化 CI/CD_jenkins api自动执行

场景设定(可替换为你的技术栈)语言:Node.js(示例简单,任何语言思路一致)制品:Docker镜像(推送到DockerHub/Harbor)运行环境:Kubernetes(staging...

5款好用开源云笔记虚拟主机部署项目推荐

在个人数据管理与协同办公场景中,开源云笔记项目凭借可自主部署、数据可控的优势,成为众多用户的首选。以下推荐5款适配虚拟主机部署、功能完善的开源项目,附核心特性与部署要点,助力快速搭建专属云笔记系统。...

取消回复欢迎 发表评论: