Python控制流:条件语句(if, elif, else)①

CSDN 2024-10-06 09:05:01 阅读 85

在这里插入图片描述

文章目录

前言1. 基本条件语句1.1 `if` 语句1.2 `else` 语句1.3 `elif` 语句1.4 嵌套条件语句

2. 条件表达式3. 多条件判断4. 比较运算符和逻辑运算符5. 常见错误和最佳实践5.1 常见错误5.2 最佳实践

6. 综合详细的例子:学生成绩管理系统6.1 类和方法Student` 类

6.2 主函数6.3 运行结果:

总结

前言

条件语句是编程中的基本控制结构之一,用于根据特定条件执行不同的代码块。在Python中,条件语句主要包括<code>if、elifelse。本文将详细介绍Python条件语句的使用方法和最佳实践,并附上一个综合详细的例子,帮助您全面掌握Python条件语句的用法。

1. 基本条件语句

1.1 if 语句

if 语句用于测试一个条件是否为真。如果条件为真,则执行代码块。

age = 18

if age >= 18:

print("你是成年人")

在这个例子中,如果变量 age 的值大于或等于18,程序将输出“你是成年人”。

1.2 else 语句

else 语句用于在条件为假时执行另一个代码块。

age = 16

if age >= 18:

print("你是成年人")

else:

print("你是未成年人")

在这个例子中,如果 age 小于18,程序将输出“你是未成年人”。

1.3 elif 语句

elif 语句用于在第一个条件为假时测试另一个条件。如果第一个条件为假且第二个条件为真,则执行第二个代码块。

score = 85

if score >= 90:

print("优秀")

elif score >= 80:

print("良好")

else:

print("及格")

在这个例子中,如果 score 大于或等于90,程序将输出“优秀”;如果 score 大于或等于80但小于90,程序将输出“良好”;否则,程序将输出“及格”。

1.4 嵌套条件语句

条件语句可以相互嵌套,以便在更复杂的条件下执行不同的代码块。

age = 20

is_student = True

if age >= 18:

if is_student:

print("你是成年学生")

else:

print("你是成年人")

else:

print("你是未成年人")

在这个例子中,外部 if 语句检查 age 是否大于或等于18,然后内部 if 语句根据 is_student 的值进一步细化输出。

2. 条件表达式

条件表达式(也称为三元运算符)是一种简洁的条件语句书写方式。它允许在单行中执行条件判断并返回相应的值。

age = 20

status = "成年人" if age >= 18 else "未成年人"

print(status) # 输出: 成年人

在这个例子中,status 的值根据 age 的值进行判断并赋值。

3. 多条件判断

使用逻辑运算符(andor)可以在一个条件语句中进行多条件判断。

age = 20

is_student = True

if age >= 18 and is_student:

print("你是成年学生")

elif age >= 18 and not is_student:

print("你是成年人")

else:

print("你是未成年人")

在这个例子中,使用 and 运算符将两个条件组合在一起,以便在条件都为真时执行代码块。

4. 比较运算符和逻辑运算符

条件语句中常用的比较运算符和逻辑运算符包括:

比较运算符:

==:等于!=:不等于>:大于<:小于>=:大于等于<=:小于等于

逻辑运算符:

and:与or:或not:非

5. 常见错误和最佳实践

5.1 常见错误

忘记缩进:在Python中,缩进表示代码块。如果忘记缩进,Python会抛出错误。

age = 18

if age >= 18:

print("你是成年人") # 缩进错误

使用赋值运算符 = 代替比较运算符 ==

age = 18

if age = 18: # 错误

print("你是成年人")

5.2 最佳实践

保持代码简洁:避免过度嵌套条件语句。使用 elif 语句而不是多个嵌套的 if-else 语句。

# 推荐

if condition1:

# do something

elif condition2:

# do something else

else:

# do another thing

# 不推荐

if condition1:

# do something

else:

if condition2:

# do something else

else:

# do another thing

使用有意义的变量名:确保变量名清晰易懂,便于代码的阅读和维护。

# 推荐

age = 20

is_student = True

if age >= 18 and is_student:

print("你是成年学生")

# 不推荐

a = 20

b = True

if a >= 18 and b:

print("你是成年学生")

6. 综合详细的例子:学生成绩管理系统

以下是一个学生成绩管理系统的例子,展示了条件语句在实际编程中的应用。

class Student:

def __init__(self, name, scores):

self.name = name

self.scores = scores # 字典,包含各科成绩

def average_score(self):

total_score = sum(self.scores.values())

num_subjects = len(self.scores)

return total_score / num_subjects

def grade(self):

avg_score = self.average_score()

if avg_score >= 90:

return "优秀"

elif avg_score >= 80:

return "良好"

elif avg_score >= 70:

return "中等"

elif avg_score >= 60:

return "及格"

else:

return "不及格"

def pass_fail(self):

for subject, score in self.scores.items():

if score < 60:

return "不及格"

return "及格"

def main():

students = [

Student("Alice", { "数学": 85, "英语": 78, "历史": 90}),

Student("Bob", { "数学": 58, "英语": 72, "历史": 65}),

Student("Charlie", { "数学": 95, "英语": 88, "历史": 92}),

]

for student in students:

print(f"学生: { student.name}")

print(f"平均成绩: { student.average_score():.2f}")

print(f"成绩等级: { student.grade()}")

print(f"总评: { student.pass_fail()}")

print("-----------")

if __name__ == "__main__":

main()

6.1 类和方法
Student` 类

__init__ 方法:初始化学生姓名和成绩。average_score 方法:计算学生的平均成绩。grade 方法:根据平均成绩返回学生的成绩等级。pass_fail 方法:检查所有科目成绩是否及格。

6.2 主函数

main 函数:创建学生列表并输出每个学生的成绩信息。

6.3 运行结果:

在这里插入图片描述

在这个例子中,我们使用了多个条件语句来确定学生的成绩等级和是否及格。通过这个例子,我们可以看到条件语句在实际编程中的应用。

总结

本文详细介绍了Python条件语句的使用方法,包括<code>if、elifelse,以及条件表达式和多条件判断。通过一个综合详细的例子,我们展示了条件语句在实际编程中的应用。希望本文对您理解和应用Python条件语句有所帮助。


欢迎点赞|关注|收藏|评论,您的肯定是我创作的动力

在这里插入图片描述



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。