python中使用矩阵来打印杨辉三角
时间: 2024-04-15 08:30:42 浏览: 103
您可以使用numpy库来处理矩阵操作,以下是一个使用矩阵打印杨三角的示例代码:
```python
import numpy as np
def print_pascal_triangle(n):
triangle = np.zeros((n, n), dtype=np.int32)
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]
max_digits = len(str(triangle[-1][n // 2])) # 获取最大数字的位数
for i in range(n):
print(' ' * ((n - i - 1) * (max_digits + 1) // 2), end='')
for j in range(i + 1):
print(f'{triangle[i][j]:^{max_digits}}', end=' ' * max_digits)
print()
# 示例调用
num_rows = 10
print_pascal_triangle(num_rows)
```
这段代码使用numpy库创建一个n×n的零矩阵,然后根据杨辉三角的规律填充矩阵。最后,根据每个数字的位数对齐打印出杨辉三角形。您可以根据需要调整num_rows的值来打印不同行数的杨辉三角形。
阅读全文