杨辉三角python左对齐
时间: 2024-05-06 11:14:25 浏览: 8
杨辉三角是一个三角形数字表,它由数字构成,数字通常是整数,可以使用python来实现。左对齐是指在输出数字时,数字的左边会留出一定的空间,使得每行数字的左边对齐。
以下是一个实现杨辉三角并且左对齐输出的python代码:
```python
def yanghui(n):
res = []
for i in range(n):
row = * (i+1)
for j in range(1, i):
row[j] = res[i-1][j-1] + res[i-1][j]
res.append(row)
return res
def print_yanghui(n):
triangle = yanghui(n)
max_len = len(str(triangle[-1][-1]))
for row in triangle:
for num in row:
print(str(num).ljust(max_len+1), end='')
print()
print_yanghui(5)
```
这段代码实现了生成一个包含n行杨辉三角的二维列表,然后遍历这个列表,将数字转换成字符串并且使用ljust方法左对齐输出。其中max_len表示最后一行最大的数字长度,用于保证每行数字左对齐。
相关问题
杨辉三角python代码要求左对齐
可以使用字符串格式化来实现左对齐,具体代码如下:
```
n = 10 # 控制杨辉三角的行数
triangle = [] # 存储杨辉三角的列表
# 生成杨辉三角
for i in range(n):
row = [1] * (i + 1)
for j in range(1, i):
row[j] = triangle[i-1][j-1] + triangle[i-1][j]
triangle.append(row)
# 输出杨辉三角
for row in triangle:
print(' '.join('{:<2}'.format(num) for num in row))
```
其中,`'{:<2}'.format(num)` 表示将 `num` 左对齐,并占用 2 个字符的宽度。
python输出左对齐杨辉三角
可以使用以下代码输出左对齐的杨辉三角:
```python
def pascal_triangle(n):
# 初始化杨辉三角的第一行
row = [1]
# 输出第一行
print(row)
# 循环输出杨辉三角的每一行
for i in range(1, n):
# 计算当前行
current_row = [1]
for j in range(1, i):
current_row.append(row[j-1]+row[j])
current_row.append(1)
# 输出当前行
print(current_row)
# 更新上一行
row = current_row
# 输出10行左对齐的杨辉三角
pascal_triangle(10)
```
输出结果如下:
```
[1]
[1, 1]
[1, 2, 1]
[1, 3, 3, 1]
[1, 4, 6, 4, 1]
[1, 5, 10, 10, 5, 1]
[1, 6, 15, 20, 15, 6, 1]
[1, 7, 21, 35, 35, 21, 7, 1]
[1, 8, 28, 56, 70, 56, 28, 8, 1]
[1, 9, 36, 84, 126, 126, 84, 36, 9, 1]
```