第1章:分支和循环——让代码学会做决定
说实话,刚开始学编程的时候,我最头疼的就是怎么让程序「活」起来。你想想看,如果代码只能从上往下一条条执行,那跟流水账有什么区别?
分支和循环,就是给代码装上「大脑」和「心脏」。大脑负责判断,心脏负责重复。今天我们就来聊聊这两个核心概念。
1.1 if判断语句:代码的「选择题」
先问个问题:你写程序的时候,是不是经常遇到这种情况——「如果A成立,就做这件事;否则做那件事」?
if语句就是干这个的。它的语法很简单:
age = 18
if age >= 18:
print("你已经成年了")
注意那个冒号!我刚开始学的时候,经常忘记写冒号,结果程序直接报错。嗯,这个小细节坑了我好几次。
1.2 运算符:判断的「工具」
判断离不开运算符。常用的有这些:
| 类型 | 运算符 | 说明 |
|---|---|---|
| 比较运算符 | ==, !=, >, <, >=, <= | 比较两个值 |
| 逻辑运算符 | and, or, not | 组合多个条件 |
| 成员运算符 | in, not in | 检查是否在序列中 |
举个例子,我在项目中遇到过这样一个场景:需要判断用户输入的分数是否在0到100之间。用and就很简单:
score = 85
if score >= 0 and score <= 100:
print("分数有效")
1.3 if-else语句:两条路选一条
有时候我们需要「二选一」。if-else就是干这个的:
age = 16
if age >= 18:
print("可以考驾照")
else:
print("再等等吧")
你想想看,如果只有if没有else,那条件不满足时程序就什么都不做。但很多时候我们需要一个「兜底」方案。
还有更复杂的多分支情况,用if-elif-else:
score = 85
if score >= 90:
grade = "优秀"
elif score >= 80:
grade = "良好"
elif score >= 60:
grade = "及格"
else:
grade = "不及格"
1.4 while循环:重复直到条件不满足
while循环就像是一个「反复检查」的过程。只要条件为真,就一直执行:
count = 0
while count < 5:
print(f"第{count+1}次循环")
count += 1
我个人习惯用while来处理「不知道要循环多少次」的情况。比如等待用户输入正确的内容:
password = ""
while password != "123456":
password = input("请输入密码:")
print("密码正确!")
1.5 for循环:遍历序列的好帮手
for循环更适合「知道要循环多少次」的情况。它专门用来遍历序列(列表、字符串、元组等):
fruits = ["苹果", "香蕉", "橘子"]
for fruit in fruits:
print(f"我喜欢吃{fruit}")
配合range()函数,可以生成数字序列:
for i in range(5): # 0,1,2,3,4
print(i)
range(5)生成0到4,共5个数。如果想从1开始,用range(1, 6)。
1.6 break和continue:循环的「刹车」和「跳过」
有时候我们需要在循环中途退出,或者跳过某次循环。这时候break和continue就派上用场了。
break:立即退出整个循环
for i in range(10):
if i == 5:
break
print(i)
# 输出:0 1 2 3 4
continue:跳过本次循环,进入下一次
for i in range(5):
if i == 2:
continue
print(i)
# 输出:0 1 3 4
我记得有一次写爬虫,遇到某个页面出错,用continue跳过它继续抓取后面的数据,省了不少事。
知识体系总览
下面这张图帮你理清本章的知识结构:
说白了,分支和循环就是编程的「骨架」。没有它们,代码就是一潭死水。有了它们,程序才能根据不同的情况做出不同的反应,才能重复执行任务直到完成。
我建议你多动手写几个小例子。比如写个猜数字游戏,用if判断大小,用while让玩家一直猜直到猜对。实践出真知,光看是学不会的。
好了,这一章就到这里。记住:分支让代码会思考,循环让代码会坚持。这两个技能掌握了,你就已经迈出了编程路上最重要的一步。