使用python生成杨辉三角形的示例代码


Posted in Python onAugust 29, 2018

杨辉三角杨辉 定义如下:

1
    / \
    1  1
   / \ / \
   1  2  1
  / \ / \ / \
  1  3  3  1
 / \ / \ / \ / \
 1  4  6  4  1
 / \ / \ / \ / \ / \
1  5  10 10 5  1

把每一行看做一个list,试写一个generator,不断输出下一行的list:

def triangles():
  L = [1]
  while True:
    yield L
    
    M=L[:]#复制一个list,这样才不会影响到原有的list。不然results里的每个列表的末尾会为0.
    M.append(0)
    L = [M[i-1]+M[i] for i in range(len(M))] 
    
n =0
results = []
for t in triangles():
  
  print(t)
  results.append(t)
  print(results)
  n = n +1
  if n == 10:
    break

ps:如何实现心

def printlove(start,length,midnumber=0,flag=31):
  for i in range(31):
    if i<start or i>start+length-1 and i<15-(midnumber-1)/2 or i>15+(midnumber-1)/2 and i<31-start-length or i> 30-start or i==flag:
      print " ",
    else:
      print "*",
  print ""
for i in range(16):
  if i ==0:
      printlove(4,3)
  elif i==1:
      printlove(1,9)
  elif i>=2 and i<=5:
      printlove(0,i+10)
  elif i==6:
      printlove(1,7,7,15)
  elif i>=7 and i<=8:
      printlove(i-5,6,5-(i-7)*2)
  elif i==9:
      printlove(5,6,1)
  elif i==10:
      printlove(8,6,1)
  elif i==15:
      printlove(15,1,1)
  else:
      printlove(i-1,16-i,1)

实现的效果如下:

使用python生成杨辉三角形的示例代码

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中实现远程调用(RPC、RMI)简单例子
Apr 28 Python
python实现爬虫统计学校BBS男女比例之多线程爬虫(二)
Dec 31 Python
分享Python开发中要注意的十个小贴士
Aug 30 Python
python爬虫入门教程--快速理解HTTP协议(一)
May 25 Python
使用python实现接口的方法
Jul 07 Python
python僵尸进程产生的原因
Jul 21 Python
python同步两个文件夹下的内容
Aug 29 Python
解决pandas展示数据输出时列名不能对齐的问题
Nov 18 Python
Python基础之字符串操作常用函数集合
Feb 09 Python
浅析pip安装第三方库及pycharm中导入第三方库的问题
Mar 10 Python
什么是Python中的匿名函数
Jun 02 Python
python绘图pyecharts+pandas的使用详解
Dec 13 Python
Python实现查询某个目录下修改时间最新的文件示例
Aug 29 #Python
有关Python的22个编程技巧
Aug 29 #Python
Python实现多线程的两种方式分析
Aug 29 #Python
Python运维自动化之nginx配置文件对比操作示例
Aug 29 #Python
python单例模式实例解析
Aug 28 #Python
Python3.7实现中控考勤机自动连接
Aug 28 #Python
python实现遍历文件夹修改文件后缀
Aug 28 #Python
You might like
重置版宣传动画
2020/04/09 魔兽争霸
PHP开发框架laravel安装与配置教程
2015/03/13 PHP
PHP使用GETDATE获取当前日期时间作为一个关联数组的方法
2015/03/19 PHP
PHP生成树的方法
2015/07/28 PHP
利用PHP获取汉字首字母并且分组排序详解
2017/10/22 PHP
PHP创建自己的Composer包方法
2018/04/09 PHP
用JavaScript实现UrlEncode和UrlDecode的脚本代码
2008/07/23 Javascript
跟我学Nodejs(一)--- Node.js简介及安装开发环境
2014/05/20 NodeJs
jquery实现对联广告的方法
2015/02/05 Javascript
JQuery使用$.ajax和checkbox实现下次不在通知功能
2015/04/16 Javascript
javascript 应用小技巧方法汇总
2015/07/05 Javascript
运用js教你轻松制作html音乐播放器
2020/04/17 Javascript
jQuery 全选 全不选 事件绑定的实现代码
2017/01/23 Javascript
从零学习node.js之详解异步控制工具async(八)
2017/02/27 Javascript
webpack自动打包和热更新的实现方法
2019/06/24 Javascript
[03:23]我的刀塔你不可能这么可爱 第一期金萌萌的故事
2014/06/20 DOTA
python正则分组的应用
2013/11/10 Python
python基础教程之自定义函数介绍
2014/08/29 Python
Python学习之Django的管理界面代码示例
2018/02/10 Python
详解Python最长公共子串和最长公共子序列的实现
2018/07/07 Python
python selenium 弹出框处理的实现
2019/02/26 Python
简单了解python PEP的一些知识
2019/07/13 Python
40个你可能不知道的Python技巧附代码
2020/01/29 Python
Python类如何定义私有变量
2020/02/03 Python
python基本算法之实现归并排序(Merge sort)
2020/09/01 Python
如何在scrapy中集成selenium爬取网页的方法
2020/11/18 Python
浅谈CSS3特性查询(Feature Query: @supports)功能简介
2017/07/31 HTML / CSS
美国正宗设计师眼镜在线零售商:EYEZZ
2019/03/23 全球购物
中科方德软件测试面试题
2016/04/21 面试题
QA工程师岗位职责
2013/11/20 职场文书
家长对小学生的评语
2014/01/28 职场文书
工作决心书
2014/03/11 职场文书
违章停车检讨书
2014/10/21 职场文书
货款欠条范本
2015/07/03 职场文书
创业计划书之书店
2019/09/10 职场文书
pandas 操作 Excel操作总结
2021/03/31 Python