Python 输出杨辉三角

描述

你的代码需要从标准输入流(控制台)中读入一个正整数 n,然后计算前 n 行的杨辉三角并将结果后并打印到标准输出流(控制台)中。

样例

评测机会通过执行命令 python main.py 来执行你的代码。你的代码需要从标准输入流(控制台)中读入数据 n,并将前 n 行的杨辉三角打印到标准输出流(控制台)中。输出格式见样例。

样例一

当 n = 3 时,程序执行打印出的结果为:

1
1 1
1 2 1

 杨辉三角

1每行第一位数和最后一位数都为1;

2其余的数为正上方和左边数之和;

代码

# write your code here
# read data from console 从控制台读取数据
n = int(input())
# 杨辉三角:每行第一位数和最后一位数都为1;其余的数为正上方和左边数之和;
l = [1]
for i in range(n):
    print(*l)  # 将列表l的元素以空格分隔输出
    l1 = [0] + l
    l2 = l + [0]
    l = [x + y for x, y in (zip(l1, l2))]

'''
这段代码的意思是,首先输入一个数n。
接下来,定义一个列表l并将1添加到其中。
然后,进行一个循环迭代n次。在每次迭代中,将列表l的元素以空格分隔输出。
然后,定义两个新的列表l1和l2,l1将0添加到列表l的前面,l2将0添加到列表l的后面。
最后,通过使用zip函数将l1和l2中的元素一一配对,并将对应的元素相加,生成一个新的列表,并将其赋值给l。
以此完成每次迭代后的列表更新,并再次执行下一次迭代。
'''

代码测试成功截图

原题网址

 2348 · 输出杨辉三角(Python 版) - LintCode

你可能感兴趣的:(python,开发语言)