20 分钟
Python 入门

循环嵌套

掌握双重循环,打印各种图形

  • 理解双重循环执行流程
  • 用嵌套循环打印图形
  • 了解循环次数计算

嵌套循环

循环里面放循环。外层每走一步,内层走完一整圈:

示例代码(可运行)
💡外层控制行,内层控制列

打印图形时:外层循环管行数,内层循环管每行打印的内容。

打印矩形

示例代码(可运行)

打印三角形

示例代码(可运行)
预测输出
for i in range(3):
    for j in range(2):
        print("*", end="")
    print()

九九乘法表预览

示例代码(可运行)
找 Bugprint 默认带换行,每个星号会单独占一行。要加 end="" 取消换行,内层循环跑完再单独 print() 补个换行。
# 打印3行星号 for i in range(3): for j in range(3): print("*")
填空题填写空白处的代码
for i in range(3): for j in range(3): print(i, j) # 内层循环体一共执行
选择题

双重循环 for i in range(3): for j in range(2): 执行多少次?

选择题

两层 for 循环,外层跑 3 次、内层跑 4 次,内层总共执行多少次?

资深工程师加餐

底层原理 · 大厂视角 · 工程经验,点卡片展开

Python 里整数、字符串甚至函数都是对象,堆在内存里;变量不是装东西的盒子,而是一张贴在对象上的「名字标签」(引用)。id(x) 看对象身份,is 比身份、== 比值。CPython 会缓存 -5~256 的小整数,所以 a=1;b=1 时 a is b 为 True,但 a=300;b=300 未必。结论:判断值是否相等永远用 ==,判断是不是 None 才用 is。

挑战任务

直角三角形

简单+50 XP

用嵌套循环打印 5 行直角三角形。

直角三角形
2 个测试用例

课后作业

倒三角形

中等+20 XP

打印5行倒直角三角形。第一行5个星号,逐行递减。

倒三角形
1 个测试用例