目录
一、if 语句
1. 概述
if
语句用于条件判断,根据条件表达式的结果(True
/False
)决定代码执行路径。
if 语法:
if condition:
#代码块
else:
#代码块
-
示例
#判断一个数是否是正数示例 num=int(input("输入一个数字")) #input函数输入的都是字符串类型 if num>0: print("输入的数字是正数") else: print("输入的数字是负数") #判断学生成绩示例 print("请输入学生的成绩:") score = int(input()) if score >=81: print("成绩优秀,继续保持!") elif score <=80 and score >=70: print("成绩良好,继续努力!") elif score >=60: print("成绩及格,继续加油!") else: print("成绩不及格,请努力学习!")
2. 条件表达式与关系运算符
概述: 经过运算得到布尔值,返回的结果是 True(真)或 False(假)。
语法:操作符 关系运算符 操作数
关系运算符:用于比较值的大小或相等性。
运算符 | 含义 | 示例 |
---|---|---|
== | 等于 | 5 == 5 → True |
!= | 不等于 | 3 != 2 → True |
> | 大于 | 10 > 5 → True |
< | 小于 | 3 < 1 → False |
>= | 大于等于 | 5 >= 5 → True |
<= | 小于等于 | 4 <= 3 → False |
逻辑运算符:组合多个条件。
运算符 | 含义 | 示例 |
---|---|---|
and | 逻辑与 | (age > 18) and (age < 60) |
or | 逻辑或 | (score >= 90) or (bonus > 0) |
not | 逻辑非 | not (x == y) |
3. if-else 条件语句
根据条件选择执行不同分支:
if 条件表达式: # 条件为 True 时执行的代码 else: # 条件为 False 时执行的代码
age = 20
if age >= 18:
print("成年人")
else:
print("未成年人")
4. 多重 if 语句
语法:
if 条件1:
# 条件1为 True 时执行
elif 条件2:
# 条件2为 True 时执行
else:
# 所有条件为 False 时执行
示例:
score = 85
if score >= 90:
print("优秀")
elif score >= 80:
print("良好")
elif score >= 60:
print("及格")
else:
print("不及格")
5. if 语句的常见问题
-
缩进错误:未对齐代码块 → 引发
IndentationError
。 -
逻辑错误:条件顺序不当(如先判断
score >= 60
,再判断score >= 80
)。 -
误用
=
:if x = 5
(应为if x == 5
)。
二、Python 的循环
1. while 循环
(0)概述
重复执行代码块,直到条件变为 False
。
(1)while 循环语句
while 条件表达式:
# 循环体(条件为 True 时执行)#False假结束(必须有限制,最终为假,否则会陷入死循环)
示例:
i=1 #初始化循环变量i为1
sum=0 #初始化变量sum为0
while i<=5: #当i小于等于5时执行循环体
print ('请输入第%d 门课程的考试成绩:'%i) #输出提示信息
sum=sum+int(input()) #输入成绩并累加到sum变量中
i=i+1 #循环变量i加1
avg=sum/(i-1) #计算平均成绩
print('平均成绩为:%d' %avg) #输出平均成绩
(2)Python 的注释
-
单行注释:
# 这是注释 (行开头“#”为单行注释,紧随同行代码的“#”的为行内注释。)
-
多行注释:用三引号包裹(
'''注释'''
或"""注释"""
)
(3)字符串的格式化输出
字符串中的“%d”,表示插入的是一个整型数据,%s 格式化字符串,%f 格式化浮点数字;字符串后面的“% i”表示获取变量 i 的值。
num = 5
numStr = '5'
numF = 5.55
print ("第%d 名" % num)
print ("第%s 名" % numStr)
print ("浮点数是:%f" % numF)
(4)while 循环嵌套
在while 语句中,可以包含另一个 while 语句
j=1 #初始化循环变量j为1
pro='请输入学生名字:'
while j<=2:
sum=0 #初始化变量sum为0
i=1
name=input(pro)
while i<=5:
print ('请输入第%d 门课程的考试成绩:'%i) #输出提示信息))
sum=sum+int(input()) #输入成绩并累加到sum变量中
i=i+1 #循环变量i加1
avg=sum/(i-1) #计算平均成绩
print('%s平均成绩为:%d' %(name,avg)) #输出平均成绩
j=j+1
print('学生输入结束!')
2. for 循环
(0)概述
遍历可迭代对象(如列表、字符串、字典等),按顺序处理每个元素。
(1)for 循环的几种方式
(逐个获得字符串的每个字符)
-
遍历列表和元组:
fruits = ["apple", "banana", "cherry"] for fruit in fruits: print(fruit)
-
遍历字符串:
for letter in "Python": print('Current letter:%s' %letter)
-
结合
range()
:for i in range(5): # 0~4 print(i) for i in range(1, 6): # 1~5 print(i) for i in range(0, 10, 2): # 0,2,4,6,8 print(i)
(2)for 循环示例
subject=('语文','数学','英语','物理','化学')
i=0
for i in subject:
print('请输入%s成绩:'%i)
score=int(input())
sum=sum+score #计算总分数
avg=sum/5 #计算平均成绩
print('科目总成绩',sum,'平均成绩',avg)
(3)for 循环嵌套
students=['zhangsan','lisi']
subjects=['语文','数学','英语']
for stud in students:
sum=0
for sub in subjects:
print('请输入%s的%s成绩:'%(stud,sub))
score=int(input())
if score<0 or score>100:
print('输入的成绩有误!')
continue
sum=sum+score #计算总分数
avg=sum/3 #计算平均成绩
print('%s的成绩总成绩为:%d,平均成绩为:%d'%(stud,sum,avg))
三、循环控制
(1)break 语句
作用:立即终止整个循环,跳出循环体。
示例:
num = 0
while True:
print(num)
num += 1
if num >= 5:
break # 当 num=5 时终止循环
(2)continue 语句
作用:跳过当前迭代,直接进入下一次循环。
示例:
for i in range(10):
if i % 2 == 0:
continue # 跳过偶数
print(i) # 输出 1,3,5,7,9
总结对比表
语句 | 用途 | 典型场景 |
---|---|---|
if-elif-else | 条件分支判断 | 根据输入选择不同操作 |
while | 未知次数的循环 | 读取文件直到结束 |
for | 遍历已知集合元素 | 处理列表、字典、字符串 |
break | 强制退出循环 | 找到目标后提前终止搜索 |
continue | 跳过当前迭代 | 过滤不符合条件的数据 |