代码实现:
# python实现杨辉三角形
defyanghui():# 定义第一行列表为[1]
line = [1]whileTrue:# yield的作用:把一个函数变成生成器,同时返回一个list,下次从yield的下条语句执行
yieldline# 设上一个为[1],通过式子可得[1,1],继而[1,2,1]......
line = [1] + [line[i] + line[i + 1] for i in range(len(line) - 1)] + [1]# 输入杨辉三角形的行数
n = int(input("请输入行数:"))
# 定义一个结束的变量flag =0# 生成器可迭代,做个遍历
for i inyanghui():# 打印每行的列表的元素,用空格连接
print(" ".join(str(j) for j in i))
# 打印完一行,flag+1
flag += 1
# 如果变量flag等于输入的行数,跳出for循环
if flag ==n:# 跳出循环
break
效果:
请输入行数:6
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
Process finished with exit code 0
刷新评论
刷新页面
返回顶部
googletag.cmd= googletag.cmd ||[];
googletag.defineSlot("/1090369/C1", [300, 250], "div-gpt-ad-1546353474406-0").addService(googletag.pubads());
googletag.defineSlot("/1090369/C2", [468, 60], "div-gpt-ad-1539008685004-0").addService(googletag.pubads());
googletag.pubads().enableSingleRequest();
googletag.enableServices();
});
if (new Date() >= new Date(2018, 9, 13)) {
googletag.cmd.push(function () { googletag.display("div-gpt-ad-1539008685004-0"); });
}
deliverBigBanner();
setTimeout(function() { incrementViewCount(cb_entryId); },50); deliverAdT2();
deliverAdC1();
deliverAdC2();
loadNewsAndKb();
loadBlogSignature();
LoadPostCategoriesTags(cb_blogId, cb_entryId); LoadPostInfoBlock(cb_blogId, cb_entryId, cb_blogApp, cb_blogUserGuid);
GetPrevNextPost(cb_entryId, cb_blogId, cb_entryCreatedDate, cb_postType);
loadOptUnderPost();
GetHistoryToday(cb_blogId, cb_blogApp, cb_entryCreatedDate);