使用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脚本暴力破解栅栏密码
Oct 19 Python
用Python写冒泡排序代码
Apr 12 Python
Python中矩阵库Numpy基本操作详解
Nov 21 Python
Python使用OpenCV进行标定
May 08 Python
Python中面向对象你应该知道的一下知识
Jul 10 Python
python使用Qt界面以及逻辑实现方法
Jul 10 Python
python3.6中@property装饰器的使用方法示例
Aug 17 Python
python matplotlib 绘图 和 dpi对应关系详解
Mar 14 Python
在keras里实现自定义上采样层
Jun 28 Python
Python如何解除一个装饰器
Aug 07 Python
Python爬虫进阶之Beautiful Soup库详解
Apr 29 Python
Python机器学习之PCA降维算法详解
May 19 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
使用php+apc实现上传进度条且在IE7下不显示的问题解决方法
2013/04/25 PHP
PHP加Nginx实现动态裁剪图片方案
2014/03/10 PHP
php使用socket post数据到其它web服务器的方法
2015/06/02 PHP
JavaScript 异步方法队列链实现代码分析
2010/06/05 Javascript
jQuery hover 延时器实现代码
2011/03/12 Javascript
html文件中jquery与velocity变量中的$冲突的解决方法
2013/11/01 Javascript
JQuery.get提交页面不跳转的解决方法
2015/01/13 Javascript
Linux下为Node.js程序配置MySQL或Oracle数据库的方法
2016/03/19 Javascript
JS判断元素是否在数组内的实现代码
2016/03/30 Javascript
Javascript之面向对象--封装
2016/12/02 Javascript
AngularJS双向绑定和依赖反转实例详解
2017/04/15 Javascript
web前端开发中常见的多列布局解决方案整理(一定要看)
2017/10/15 Javascript
JS实现提交表单前的数字及邮箱校检功能
2017/11/13 Javascript
Angularjs实现控制器之间通信方式实例总结
2018/03/27 Javascript
JavaScript实现简单的文本逐字打印效果示例
2018/04/12 Javascript
vue中如何让子组件修改父组件数据
2018/06/14 Javascript
深入理解react-router 路由的实现原理
2018/09/26 Javascript
让webpack+vue-cil项目不再自动打开浏览器的方法
2018/09/27 Javascript
[46:47]2014 DOTA2国际邀请赛中国区预选赛5.21 LGD-CDEC VS NE
2014/05/22 DOTA
netbeans7安装python插件的方法图解
2013/12/24 Python
Python中字典和JSON互转操作实例
2015/01/19 Python
详解Django中Request对象的相关用法
2015/07/17 Python
python os.path.isfile()因参数问题判断错误的解决
2019/11/29 Python
Python 实现数组相减示例
2019/12/27 Python
把Anaconda中的环境导入到Pycharm里面的方法步骤
2020/10/30 Python
实例讲解利用HTML5 Canvas API操作图形旋转的方法
2016/03/22 HTML / CSS
水芝澳美国官网:H2O Plus
2016/10/15 全球购物
英国最大的在线运动补充剂商店:Discount Supplements
2017/06/03 全球购物
凯撒娱乐:Caesars Entertainment
2018/02/23 全球购物
营销人才自我鉴定范文
2013/12/25 职场文书
金融学专业大学生职业生涯规划
2014/03/07 职场文书
小学生感恩老师演讲稿
2014/08/28 职场文书
2014年文明创建工作总结
2014/11/25 职场文书
2014年信息技术工作总结
2014/12/16 职场文书
2015年护理工作总结范文
2015/04/03 职场文书
穆斯林的葬礼读书笔记
2015/06/26 职场文书