【前言】可以参看我的视频进行学习,本系列教程,持续更新中,喜欢的朋友,关注,点赞,分享,需要笔记代码的同学可以在评论区留言。杨辉三角是经典的二维列表练习,核心规则:
- 中间元素 = 上一行同位置元素 + 上一行前一个元素
完整代码(直接运行)
# 获取用户输入:要打印的杨辉三角行数
n = int(input("请输入杨辉三角的行数:"))
# 1. 初始化二维列表(空列表)
triangle = []
# 2. 逐行生成杨辉三角
for i in range(n):
# 初始化当前行,默认所有元素为1(首尾天然是1)
row = [1] * (i + 1)
# 3. 计算中间元素(首尾不用改,只遍历中间位置)
for j in range(1, i):
row[j] = triangle[i-1][j-1] + triangle[i-1][j]
# 把当前行添加到二维列表中
triangle.append(row)
# 4. 打印杨辉三角(格式化输出,对齐美观)
for line in triangle:
# 转成字符串,用空格分隔,居中打印
print(" ".join(map(str, line)).center(n*3))
代码核心解释
1. 二维列表结构
triangle 是二维列表,比如 5 行的杨辉三角存储为:[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]
2. 核心逻辑(双层循环)
- 外层循环
for i in range(n):控制行数 - 内层循环
for j in range(1, i):控制每行的中间元素 - 关键公式:
row[j] = 上一行[j-1] + 上一行[j] → triangle[i-1][j-1] + triangle[i-1][j]
3. 格式化打印
运行示例
输入:5输出:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
总结