Python二维列表杨辉三角
时间: 2023-10-30 15:22:08 浏览: 76
杨辉三角是一个数学中的经典问题,可以使用二维列表来表示。下面是一个例子,使用 Python 代码来生成一个 10 行的杨辉三角:
```python
n = 10
triangle = [[1]]
for i in range(1, n):
row = [1]
for j in range(1, i):
row.append(triangle[i-1][j-1] + triangle[i-1][j])
row.append(1)
triangle.append(row)
# 输出杨辉三角
for i in range(n):
print(" "*(n-i), end="")
for j in range(i+1):
print(triangle[i][j], end=" ")
print()
```
代码中的 `triangle` 变量是一个二维列表,用于存储杨辉三角。循环遍历每一行,通过计算上一行的元素来生成当前行的元素,并将当前行添加到二维列表中。最后输出杨辉三角的每一行。
希望这段代码能帮到你。
相关问题
Python使用二维列表储存杨辉三角
好的,我来给你介绍一下如何使用Python储存杨辉三角。
在Python中,我们可以使用二维列表来储存杨辉三角。具体实现如下:
```python
# 定义一个二维列表,用于储存杨辉三角
triangle = []
# 输入要生成的行数
n = int(input("请输入要生成的杨辉三角的行数:"))
# 生成杨辉三角
for i in range(n):
# 定义每一行的列表
row = []
for j in range(i+1):
# 杨辉三角的左右两侧都是1
if j == 0 or j == i:
row.append(1)
# 其他位置上的数是上一行相邻两个数之和
else:
row.append(triangle[i-1][j-1] + triangle[i-1][j])
# 将这一行添加到二维列表中
triangle.append(row)
# 输出杨辉三角
for row in triangle:
for num in row:
print(num, end=" ")
print()
```
以上代码中,我们首先定义了一个空的二维列表`triangle`,用于储存杨辉三角。然后,我们输入要生成的行数`n`。接下来,我们使用两层循环生成杨辉三角。外层循环控制行数,内层循环控制每一行的数字。在内层循环中,我们判断当前位置是否是杨辉三角的左右两侧,如果是,则该位置上的数字为1;否则,该位置上的数字为上一行相邻两个数字之和。每生成一行数字,我们就将该行添加到二维列表`triangle`中。最后,我们使用两层循环输出杨辉三角。
希望这个代码对你有所帮助!
Python用列表打印杨辉三角
杨辉三角是指每个数字是它左上方和右上方的数字之和的三角形。你可以使用 Python 的列表来打印杨辉三角,以下是代码实现:
```
def print_yanghui_triangle(n):
# 初始化二维列表
triangle = [[0 for i in range(n)] for j in range(n)]
# 计算杨辉三角的数值
for i in range(n):
for j in range(i + 1):
if j == 0 or j == i:
triangle[i][j] = 1
else:
triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j]
# 打印杨辉三角
for i in range(n):
for j in range(i + 1):
print(triangle[i][j], end=' ')
print()
# 打印10行的杨辉三角
print_yanghui_triangle(10)
```
阅读全文