📌 回顾与目标
· 前一天学习了变量、数据类型、输入输出、基本运算
· 今天学习让程序拥有判断能力(条件)和重复执行能力(循环)
---
1. 条件判断(if 语句)
1.1 基本语法
```python
if 条件:
条件成立时执行的代码
```
· 缩进至关重要:Python 用缩进表示代码块(通常用 4 个空格)
· 条件通常是比较运算的结果(True / False)
1.2 比较运算符
运算符 含义 示例
== 等于 age == 18
!= 不等于 score != 100
> 大于 height > 1.7
< 小于 num < 10
>= 大于等于 count >= 5
<= 小于等于 temp <= 36.5
1.3 if-else 结构(二选一)
```python
age = int(input("你的年龄:"))
if age >= 18:
print("成年人")
else:
print("未成年人")
```
1.4 if-elif-else 结构(多分支)
```python
score = int(input("考试成绩:"))
if score >= 90:
print("优秀")
elif score >= 70:
print("良好")
elif score >= 60:
print("及格")
else:
print("不及格")
```
注意:elif 可以有多个,else 可选,且只能放在最后。
1.5 逻辑运算符(组合多个条件)
运算符 含义 示例
and 且(两个都真才真) age >= 18 and age <= 60
or 或(至少一个真) score < 60 or score > 100
not 非(取反) not is_rainy
示例:
```python
year = int(input("年份:"))
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
print("闰年")
else:
print("平年")
```
---
2. 循环(重复执行)
2.1 while 循环(条件满足时不断执行)
```python
count = 1
while count <= 5:
print(f"第{count}次循环")
count = count + 1 # 更新条件,避免死循环
```
· 先判断条件,再执行循环体
· 必须改变循环变量,否则会无限循环(按 Ctrl+C 可强制停止)
2.2 for 循环(遍历序列或范围)
配合 range() 函数
```python
# range(stop) -> 0,1,...,stop-1
# range(start, stop) -> start,start+1,...,stop-1
# range(start, stop, step) -> 步长
for i in range(5): # 0,1,2,3,4
print(i)
for i in range(1, 6): # 1,2,3,4,5
print(i)
for i in range(10, 0, -2): # 10,8,6,4,2
print(i)
```
遍历字符串
```python
word = "Python"
for ch in word:
print(ch) # 逐个输出 P y t h o n
```
2.3 break 和 continue
· break:立即结束整个循环
· continue:跳过本次循环剩余代码,进入下一次迭代
```python
# 示例:找到第一个能被7整除的数
for num in range(10, 100):
if num % 7 == 0:
print(f"找到: {num}")
break # 找到后不再继续
# 示例:跳过偶数
for i in range(10):
if i % 2 == 0:
continue
print(i) # 输出 1,3,5,7,9
```
---
3. 综合示例:猜数字游戏
```python
import random
secret = random.randint(1, 100) # 随机生成1~100之间的整数
guess = None
attempts = 0
print("猜数字游戏!数字范围1~100")
while guess != secret:
guess = int(input("输入你猜的数字:"))
attempts += 1
if guess < secret:
print("太小了,再试一次")
elif guess > secret:
print("太大了,再试一次")
else:
print(f"恭喜!猜对了!共用了{attempts}次")
```
---
4. 今日练习任务
1. 判断奇偶数
输入一个整数,输出它是奇数还是偶数。
2. 打印乘法表(使用嵌套循环)
输出如下格式(至少到5x5):
```
1x1=1
1x2=2 2x2=4
1x3=3 2x3=6 3x3=9
...
```
3. 累加求和
使用 while 或 for 计算 1+2+3+…+100 的结果,并输出。
4. 改进猜数字游戏
增加提示剩余范围(例如“数字在50~100之间”)。
---
📌 重点总结
· if / elif / else 实现分支判断
· while 适合未知次数的循环(条件控制)
· for 适合遍历已知序列或固定次数循环
· break 跳出循环,continue 跳过本次循环
· 注意缩进和冒号
下一课预告:列表、元组和字典 —— 批量存储数据