使用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 Requests安装与简单运用
Apr 07 Python
tensorflow 使用flags定义命令行参数的方法
Apr 23 Python
Python3随机漫步生成数据并绘制
Aug 27 Python
Python高级特性切片(Slice)操作详解
Sep 27 Python
Python tkinter label 更新方法
Oct 11 Python
用Python实现筛选文件脚本的方法
Oct 27 Python
Django ORM 查询管理器源码解析
Aug 05 Python
python3使用GUI统计代码量
Sep 18 Python
Pandas实现dataframe和np.array的相互转换
Nov 30 Python
运行tensorflow python程序,限制对GPU和CPU的占用操作
Feb 06 Python
python 实现读取csv数据,分类求和 再写进 csv
May 18 Python
python安装mysql的依赖包mysql-python操作
Jan 01 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
初学者入门:细述PHP4的核心Zend
2006/09/05 PHP
zf框架的zend_cache缓存使用方法(zend框架)
2014/03/14 PHP
Laravel学习教程之IOC容器的介绍与用例
2017/08/15 PHP
PHP根据key删除数组中指定的元素
2019/02/28 PHP
JS backgroundImage控制
2009/05/19 Javascript
javascript new后的constructor属性
2010/08/05 Javascript
JavaScript jquery及AJAX小结
2016/01/24 Javascript
详解javascript实现瀑布流列式布局
2016/01/29 Javascript
JS实现兼容各种浏览器的获取选择文本的方法【测试可用】
2016/06/21 Javascript
微信小程序商品详情页的底部弹出框效果
2020/11/16 Javascript
JavaScript使用类似break机制中断forEach循环的方法
2018/11/13 Javascript
利用js-cookie实现前端设置缓存数据定时失效
2019/06/18 Javascript
实现vuex与组件data之间的数据同步更新方式
2019/11/12 Javascript
Vue项目前后端联调(使用proxyTable实现跨域方式)
2020/07/18 Javascript
小程序实现左滑删除的效果的实例代码
2020/10/19 Javascript
深入浅析python继承问题
2016/05/29 Python
使用Python写CUDA程序的方法
2017/03/27 Python
python 将字符串转换成字典dict的各种方式总结
2018/03/23 Python
Vue的el-scrollbar实现自定义滚动
2018/05/29 Python
Mac在python3环境下安装virtualwrapper遇到的问题及解决方法
2019/07/09 Python
Python之字典对象的几种创建方法
2020/09/30 Python
Html5 APP中监听返回事件处理的方法示例
2018/03/15 HTML / CSS
Looking4Parking美国:全球排名第一的机场停车比较品牌
2019/08/26 全球购物
Stokke美国官方网店:高级儿童家具、推车、汽车座椅和配件
2020/06/06 全球购物
小学教师学期末自我评价
2013/09/25 职场文书
总裁办公室主任职责
2014/01/02 职场文书
安全事故检讨书
2014/01/18 职场文书
《满井游记》教学反思
2014/02/26 职场文书
推广活动策划方案
2014/08/23 职场文书
颐和园的导游词
2015/01/30 职场文书
学校运动会简讯
2015/07/20 职场文书
《田忌赛马》教学反思
2016/02/19 职场文书
Html5通过数据流方式播放视频的实现
2021/04/27 HTML / CSS
关于PHP数组迭代器的使用方法实例
2021/11/17 PHP
vue3不同环境下实现配置代理
2022/05/25 Vue.js
Java实现HTML转为Word的示例代码
2022/06/28 Java/Android