当前位置: 首页 > news >正文

if 语句

代码缩进为一个 tab 键,或者四个空格,建议用四个空格。

同级代码必须缩进相同空格,if 和 else 里面缩进不同没关系,比如 if 下面缩进是 4 个空格,else 下面缩进是 2 个空格,是完全没有问题的。

程序示例:

weather = '晴天'
if weather == '下雨':print("出门要带伞")
elif weather == '阴天':print("出门要带帽子")
elif weather == '大风天':print("出门要多穿衣服")
else:print("出门啥也不用带")

程序示例:

weight = float(input("Enter your weight in kg: "))
height = float(input("Enter your height in m: "))
BMI = weight / (height * height)
if BMI <= 18.5:print("Your BMI is %f, it is too thin" % BMI)
elif BMI <= 23.9:print("Your BMI is %f, it is okay" % BMI)
else:print("Your BMI is %f, it is too fat!" % BMI)

结果:

Enter your weight in kg: 75
Enter your height in m: 1.76
Your BMI is 24.212293, it is too fat!

Python 中的 match 语句是 Python 3.10 及以后版本中引入的新特性,用于模式匹配。它允许你根据对象的模式来检查对象,并执行相应的代码块。

match 语句中的每个代码块由一个或多个 case 子句组成。每个 case 子句后面跟着一个模式和一个代码块。当模式匹配成功时,会执行相应的代码块。如果没有任何模式匹配成功则可以选择使用一个默认的代码块,使用下划线 _ 来表示,_ 是通配符,表示匹配所有未被捕获的情况。

match 语句特别适用于处理复杂的数据结构,如元组、列表、字典等,以及自定义类的实例。它通过模式匹配提供了更简洁、更直观的方式来处理复杂的条件逻辑。

match-case 的基本结构如下:

match expression:case pattern1:# 匹配 pattern1 时执行的代码case pattern2 | pattern3 | pattern4 | pattern5 | pattern6:# 匹配 pattern2 或 pattern3 或 pattern4 或 pattern5 或 pattern6 时执行的代码case pattern2 if condition:# 匹配 pattern2 且满足条件 condition 时执行的代码case pattern3 | pattern4 | pattern5 if condition:# 匹配 pattern3 或 pattern4 或 pattern5 且满足条件 condition 时执行的代码case _:# 默认情况

程序示例:

week = input("请输入星期几:")
match week:case '一':print("星期一")case '二':print("星期二")case '三':print("星期三")case '四':print("星期四")case '五':print("星期五")case '六':print("星期六")case '日':print("星期日")case _:print("输错了")

结果:

请输入星期几:日
星期日

程序示例:

week = input("请输入星期几:")
match week:case '一' | '二' | '三' | '四' | '五':print("工作日")case '六' | '日':print("休息日")case _:print("输错了")

结果:

请输入星期几:二
工作日

程序示例:

integer = 100
week = input("请输入星期几:")
match week:case '一' | '二' | '三' | '四' | '五' if integer > 10:print("工作日")case '六' | '日':print("休息日")case _:print("输错了")

结果:

请输入星期几:一
工作日

程序示例:

# 判断闰年
year = input('Enter a year: ')
if year.isdigit():year = int(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')
else:print("Please enter a number")

结果:

Enter a year: 2024
2024 is a leap year

结果:

Enter a year: aaa
Please enter a number
http://www.jsqmd.com/news/22393/

相关文章:

  • 深入解析:ue编辑器视口鼠标消失的问题
  • 详细介绍:React Native 中的 useState、Context
  • 昨夜雨疏风骤
  • 明天的任务
  • Windows SMB权限提升漏洞遭活跃利用
  • 深度神经网络 —— 使用深度自动编码器进行手写数字的去噪音
  • 江西振兴杯决赛Misc全解
  • 完整教程:Webpack5 第四节
  • vlan batch { vlan-id1 [ to vlan-id2 ] } 概念及题目 - 教程
  • 完整教程:ACWing08:高精度专题
  • 2025.10.25总结
  • ABC429
  • 使用本地git命令行拉取github.com软件仓库public项目
  • 10.25 CSP-S模拟39/2025多校冲刺CSP模拟赛8 改题记录
  • 嵌入子流形
  • 列表,集合,字典的增、删、查、改方法对比
  • 玩转单片机之智能车小露——数字与字符串的转换与打印
  • 数据采集作业1 102302111 海米沙
  • linux磁盘管理-RAID介绍 - 详解
  • 详细介绍:语义网络(Semantic Net)对人工智能中自然语言处理的深层语义分析的影响与启示
  • 线段上随机取n个点的最大距离期望
  • MusicFree 音乐
  • P10老板一句‘搞不定就P0’,15分钟我用Arthas捞回1000万资损 - 指南
  • RuoYi-Cloud-Plus 数据权限实现原理解析
  • 详细介绍:JavaScript学习笔记(十五):ES6模板字符串使用指南
  • Python毕业设计实例-基于python养老社区的查询预约架构(源码+LW+部署文档+全bao+远程调试+代码讲解等)
  • 第5天(中等题 滑动窗口、逆向思维)
  • Meet in the middle 学习笔记
  • 华为堡垒机
  • [HZOI] CSP-S模拟38 赛后总结