CC++ & Algorithm

Python语句的执行顺序

简单5
语言版本:C++Python
概述:用排队买冰淇淋的比喻,解释Python程序从上到下、按顺序执行每一行代码的原则。

顺序执行:Python的“排队规则”

你有没有想过,计算机是怎么知道你让它先做什么、后做什么的?其实,Python程序就像一支整齐的队伍——它严格按照从上到下的顺序,一行一行地执行代码。这种执行方式叫做“顺序结构”,是编程中最基本、最自然的规则。只要掌握了它,你就能让计算机按照你的计划一步步完成任务。


排队买冰淇淋的代码世界

想象一下你去排队买冰淇淋。队伍前面的人先买,你排在他们后面,要等他们买完才轮到你。Python程序也是这样:它严格按照从上到下的顺序执行每一行代码。 先写的那一行先执行,后写的后执行,谁也不会插队。

生活中的很多事都是按顺序进行的:刷牙→洗脸→吃早餐,先穿袜子后穿鞋,先答题后交卷……顺序错了,结果就会乱套。Python里也一样,顺序决定了程序的输出。


看一个简单例子

我们写几行代码,让Python帮我们打印两张“门票”:

print("第一步:开始排队")
print("第二步:挑选口味")
print("第三步:付钱")

当你运行这个程序时,Python会像排队一样:

  1. 先执行第1行,输出:第一步:开始排队
  2. 再执行第2行,输出:第二步:挑选口味
  3. 最后执行第3行,输出:第三步:付钱

输出的结果会按照这个顺序一行一行显示出来。


如果写反了顺序会怎样?

如果把代码调换一下:

print("第三步:付钱")
print("第一步:开始排队")
print("第二步:挑选口味")

那么输出会变成:

第三步:付钱
第一步:开始排队
第二步:挑选口味

看,这就变成“先付钱再排队”了,很可笑对吧?因为Python严格按照你写的顺序执行,不会帮你“整理”顺序


更多生活中的例子:用代码描述步骤

例子1:做数学作业的步骤

假设你要完成三道数学题:先做加法,再做减法,最后做乘法。用代码描述:

# 定义作业步骤
step1 = "完成加法题"      # 第一步
step2 = "完成减法题"      # 第二步
step3 = "完成乘法题"      # 第三步

print(step1)
print(step2)
print(step3)

输出:

完成加法题
完成减法题
完成乘法题

如果交换顺序,就会变成“先做乘法再做加法”,不符合常理。

例子2:组装一个乐高模型

组装说明上写着:① 装底座 → ② 装轮子 → ③ 装车身。用Python写出来:

print("1. 把底座放在桌上")
print("2. 装上四个轮子")
print("3. 把车身扣在底座上")

计算机就会按顺序打印这三句话。如果你把第2行和第3行互换,就会变成“先装车身再装轮子”,结果模型会散架。


不只是打印语句:变量赋值也遵循顺序

顺序结构不仅影响 print,还影响变量的赋值。比如下面这个例子:

# 先定义钱数和价格
money = 20         # 我有20元零花钱
price = 5          # 一支冰淇淋5元
# 计算能买几支
ice_cream_count = money // price   # 整除,得到4支
print("我能买", ice_cream_count, "支冰淇淋")

程序会按照顺序:先给 money 赋值20,再给 price 赋值5,然后用这两个变量计算,最后打印结果。如果把 price 的定义放到计算之后:

money = 20
ice_cream_count = money // price   # 此时price还未定义,会报错!
price = 5
print(ice_cream_count)

Python会报错 NameError: name 'price' is not defined,因为 price 还没定义就被使用了。所以,顺序不仅决定了输出的内容,还决定了变量是否能被正确使用


常见错误

  1. 以为Python会自动调整顺序
    有些同学写好代码后发现输出不对,觉得“没关系,Python应该知道我想先做什么”。但计算机没有“常识”,它只会一字不差地按你写的顺序执行。所以必须自己检查每一步的顺序是否符合逻辑。

  2. 忘记变量要先定义再使用
    就像上面那个报错的例子,你必须在用变量之前把它定义好。顺序反了就会报错。

  3. 混淆了“代码的书写顺序”和“代码的逻辑顺序”
    有时候程序里有if条件或循环(那属于选择结构和循环结构),但在一级阶段,我们只学顺序结构——所有代码都老老实实按行号执行,没有“跳来跳去”的情况。


完整可运行的示例:计算一周的零花钱

让我们写一个完整的程序,模拟“每天存零花钱,最后算出总数”的过程:

# 一周零花钱计算程序

# 第一步:定义每天的金额
monday = 5         # 周一妈妈给了5元
tuesday = 5        # 周二给了5元
wednesday = 10     # 周三表现好给了10元
thursday = 5       # 周四给了5元
friday = 5         # 周五给了5元

# 第二步:计算总和
total = monday + tuesday + wednesday + thursday + friday

# 第三步:打印结果
print("周一:", monday, "元")
print("周二:", tuesday, "元")
print("周三:", wednesday, "元")
print("周四:", thursday, "元")
print("周五:", friday, "元")
print("一周总共:", total, "元")

运行结果:

周一: 5 元
周二: 5 元
周三: 10 元
周四: 5 元
周五: 5 元
一周总共: 30 元

注意:程序先定义变量,再计算,最后打印——顺序完全正确。如果把 total 的计算写在定义变量之前,也会报错。


记住这个小口诀

从上到下,一行接一行,先写的先做,后写的后做。

只要记住这个规则,你就能预测任何简单程序会输出什么了。试着自己写一个“早餐顺序”程序吧:先刷牙、再洗脸、最后吃面包。注意顺序,别写成“先吃面包再刷牙”哦!


接下来学什么?

  • 变量与赋值:了解如何存储数据,以及赋值语句的顺序意义。
  • 输入与输出:用 input() 让用户输入数据,用 print() 输出结果,顺序依然重要。
  • 注释:用中文或英文给代码加说明,帮助理解每一步的作用。

顺序结构是所有程序的基础,就像盖房子的地基。地基打稳了,后面才能学习选择结构和循环结构,让代码变得更聪明、更灵活。

例题精讲

1单选题

以下Python程序执行后,输出的内容顺序是? print("A") print("B") print("C")

AA B C
BC B A
C随机顺序
D只输出最后一个C
2单选题

关于Python程序的执行顺序,以下哪个说法是正确的?

A程序按照代码编写的先后顺序依次执行
B程序总是从最后一行开始执行
C程序根据语句长度决定谁先执行
D程序所有语句同时执行
3判断题

在Python中,语句的执行顺序是从下到上的。

4判断题

将下面两行代码互换顺序,程序的输出结果一定不同。 print("Hello") print("World")

5填空题
下面的代码执行后,第一个输出的数字是1。请将空缺的语句补充完整,使得程序符合要求。
___
print(2)
print(1)