python 生成器生成杨辉三角的方法(必看)


Posted in Python onApril 10, 2017

用Python写趣味程序感觉??诺模?2幌吕?/p>

#生成器生成展示杨辉三角
#原理是在一个2维数组里展示杨辉三角,空的地方用0,输出时,转化为' '
def yang(line):
  n,leng=0,2*line - 1
  f_list = list(range(leng+2)) #预先分配,insert初始胡会拖慢速度,最底下一行,左右也有1个空格
  #全部初始化为0
  for i,v in enumerate(f_list):
    f_list[v] = 0
  ZEROLIST = f_list[:] #预留一个全零的数组
  f_list[leng//2] = 1 #初始的第一行
  re_list =f_list[:]
  n=0
  while n < line:
    n = n+1
    yield re_list
    f_list,re_list = re_list[:],ZEROLIST[:]
    start = leng//2-n #计算一行中第一个1的位置
    end = start + 2*n #计算一行中最后一个1的位置
    while start <= end:
      re_list[start] = f_list[start - 1] + f_list[start+1] #不管是不是1,该位置的数字,都是上一行该位置的左右两个数的和
      start = start + 1
  return 'done'

def printList(L):
  n = 0
  p_str = ''
  for value in L:
    ch = str(value)
    if value == 0:
      ch = ' '
    p_str = p_str + ch
  print(p_str)

for value in yang(8):
  printList(value)

以上这篇python 生成器生成杨辉三角的方法(必看)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中获取网页状态码的两个方法
Nov 03 Python
Python中的特殊语法:filter、map、reduce、lambda介绍
Apr 14 Python
Windows安装Python、pip、easy_install的方法
Mar 05 Python
Python3.6安装及引入Requests库的实现方法
Jan 24 Python
Python遍历某目录下的所有文件夹与文件路径
Mar 15 Python
python地震数据可视化详解
Jun 18 Python
在python中画正态分布图像的实例
Jul 08 Python
Django重设Admin密码过程解析
Feb 10 Python
pandas DataFrame 数据选取,修改,切片的实现
Apr 24 Python
Pandas把dataframe或series转换成list的方法
Jun 14 Python
Python常用类型转换实现代码实例
Jul 28 Python
Python自动化之UnitTest框架实战记录
Sep 08 Python
Python贪吃蛇游戏编写代码
Oct 26 #Python
OpenCV实现人脸识别
Apr 07 #Python
python使用opencv进行人脸识别
Apr 07 #Python
Python 实现链表实例代码
Apr 07 #Python
python中如何使用朴素贝叶斯算法
Apr 06 #Python
python获取当前运行函数名称的方法实例代码
Apr 06 #Python
python爬取w3shcool的JQuery课程并且保存到本地
Apr 06 #Python
You might like
php str_pad 函数用法简介
2009/07/11 PHP
PHP实现自动识别原编码并对字符串进行编码转换的方法
2016/07/13 PHP
php中preg_replace正则替换用法分析【一次替换多个值】
2017/01/17 PHP
php精度计算的问题解析
2019/06/21 PHP
Extjs入门之动态加载树代码
2010/04/09 Javascript
在一个js文件里远程调用jquery.js会在ie8下的一个奇怪问题
2010/11/28 Javascript
JS中for循序中延迟加载动态效果的具体实现
2013/08/18 Javascript
PHP+jQuery+Ajax实现多图片上传效果
2015/03/14 Javascript
JavaScript中Function函数与Object对象的关系
2015/12/17 Javascript
Seajs 简易文档 提供简单、极致的模块化开发体验
2016/04/13 Javascript
window.onload绑定多个事件的两种解决方案
2016/05/15 Javascript
移动端jQuery修正Web页面滑动时div问题的两则实例
2016/05/30 Javascript
解析JavaScript中的字符串类型与字符编码支持
2016/06/24 Javascript
微信小程序 图片边框解决方法
2017/01/16 Javascript
浅谈$_FILES数组为空的原因
2017/02/16 Javascript
基于vue中解决v-for使用报红并出现警告的问题
2018/03/03 Javascript
webpack css加载和图片加载的方法示例
2018/09/11 Javascript
ES6 如何改变JS内置行为的代理与反射
2019/02/11 Javascript
uploadify插件实现多个图片上传并预览
2019/09/30 Javascript
nuxt.js写项目时增加错误提示页面操作
2020/11/05 Javascript
[02:57]DOTA2亚洲邀请赛小组赛第四日 赛事回顾
2015/02/02 DOTA
Python openpyxl 遍历所有sheet 查找特定字符串的方法
2018/12/10 Python
Python matplotlib画图与中文设置操作实例分析
2019/04/23 Python
Python使用线程来接收串口数据的示例
2019/07/02 Python
pandas的连接函数concat()函数的具体使用方法
2019/07/09 Python
Windows 下python3.8环境安装教程图文详解
2020/03/11 Python
如何利用Python给自己的头像加一个小国旗(小月饼)
2020/10/02 Python
python利用platform模块获取系统信息
2020/10/09 Python
HTML5页面嵌入小程序没有返回按钮及返回页面空白的问题
2020/05/28 HTML / CSS
个人简历自我鉴定
2013/10/11 职场文书
如何写自我评价?自我评价写什么好?
2014/03/14 职场文书
网络编辑求职信
2014/04/30 职场文书
廉洁自律演讲稿
2014/05/22 职场文书
行政主管岗位职责
2015/02/03 职场文书
忆童年!用Python实现愤怒的小鸟游戏
2021/06/07 Python
Django框架模板用法详解
2022/06/10 Python