python实现画一颗树和一片森林


Posted in Python onJune 25, 2018

本文实例为大家分享了python画一颗树和一片森林的具体代码,供大家参考,具体内容如下

实现效果

python实现画一颗树和一片森林

代码在这里

from turtle import Turtle

def tree(plist, l, a, f):
  """
  :param plist:画笔列表,指数型增加
  :param l: 画笔的长度,同时也是递归终止条件,注意下面的引用中是字母l,不是数字1
  :param a: 分开的两个树杈之间夹角的一半,固定值65°
  :param f: 子树与父树的比值
  :return: 返回一个基本的Y型的树
  """
  if l>5:
    lst = []
    for p in plist:
      p.forward(l)
      q = p.clone()
      p.left(a)
      q.right(a)
      lst.append(p)
      lst.append(q)
    tree(lst,l*f,a,f)

def maketree(x,y):
  """

  :param x: 树起点的横坐标
  :param y: 树起点的纵坐标
  :return: 返回一颗树
  """
  p = Turtle()
  p.color("green")
  p.pensize(5)
  p.hideturtle() # 隐藏那只小乌龟

  p.getscreen().tracer(30,0)# 获得屏幕句柄,可以对其进行操作,每30次操作将屏幕刷新,延时为0
  p.speed(10)
  p.left(90)

  p.penup()
  p.goto(x, y)
  p.pendown() # 此三句向来组合使用,意思为起笔,移动,落笔之意

  t = tree([p],200,65,0.6375)
  print(len(p.getscreen().turtles()))  #一共用了多少笔划
def main():
  """
  主函数,赋树的起点坐标
  """
  maketree(0,0)
  maketree(-200,-200)
  maketree(200,-200)

main()

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

Python 相关文章推荐
Python(Tornado)模拟登录小米抢手机
Nov 12 Python
Python实现二分查找算法实例
May 26 Python
python实现诗歌游戏(类继承)
Feb 26 Python
python selenium 弹出框处理的实现
Feb 26 Python
python基于SMTP协议发送邮件
May 31 Python
python地震数据可视化详解
Jun 18 Python
python logging模块书写日志以及日志分割详解
Jul 22 Python
基于Python的图像数据增强Data Augmentation解析
Aug 13 Python
Python对接 xray 和微信实现自动告警
Sep 17 Python
Python大数据之使用lxml库解析html网页文件示例
Nov 16 Python
python实现密码验证合格程序的思路详解
Jun 01 Python
opencv实现图像平移效果
Mar 24 Python
完美解决在oj中Python的循环输入问题
Jun 25 #Python
django rest framework 数据的查找、过滤、排序的示例
Jun 25 #Python
python使用turtle库绘制树
Jun 25 #Python
使用Python微信库itchat获得好友和群组已撤回的消息
Jun 24 #Python
python库lxml在linux和WIN系统下的安装
Jun 24 #Python
Python3中详解fabfile的编写
Jun 24 #Python
关于python写入文件自动换行的问题
Jun 23 #Python
You might like
十大催泪虐心动漫,你能坚持看到第几部?
2020/03/04 日漫
GD输出汉字的函数的分析
2006/10/09 PHP
php实现仿写CodeIgniter的购物车类
2015/07/29 PHP
php实现倒计时效果
2015/12/19 PHP
PHP获取日期对应星期、一周日期、星期开始与结束日期的方法
2018/06/22 PHP
js中substring和substr的定义和用法
2014/05/05 Javascript
深入分析jsonp协议原理
2015/09/26 Javascript
Bootstrap树形控件使用方法详解
2016/01/27 Javascript
Angular 4.x 路由快速入门学习
2017/05/03 Javascript
ES6学习教程之Map的常用方法总结
2017/08/03 Javascript
JavaScript 自定义事件之我见
2017/09/25 Javascript
jquery实现垂直手风琴导航栏
2020/02/18 jQuery
[29:10]Ti4 冒泡赛第二天 NEWBEE vs Titan 3
2014/07/15 DOTA
python实现绘制树枝简单示例
2014/07/24 Python
Python的Flask框架与数据库连接的教程
2015/04/20 Python
Python堆排序原理与实现方法详解
2018/05/11 Python
Python正则表达式和元字符详解
2018/11/29 Python
python使用装饰器作日志处理的方法
2019/07/11 Python
django 控制页面跳转的例子
2019/08/06 Python
Python多叉树的构造及取出节点数据(treelib)的方法
2019/08/09 Python
解决paramiko执行命令超时的问题
2020/04/16 Python
在django中查询获取数据,get, filter,all(),values()操作
2020/08/09 Python
解决pytorch 的state_dict()拷贝问题
2021/03/03 Python
魅力惠奢品线上平台:MEI.COM
2016/11/29 全球购物
乐天旅游台湾网站:Rakuten Travel TW
2017/06/01 全球购物
新奥尔良珠宝:Mignon Faget
2020/11/23 全球购物
如何现实servlet的单线程模式
2014/08/05 面试题
本科生职业生涯规划书范文
2014/01/21 职场文书
单位工程竣工验收方案
2014/03/16 职场文书
自行车广告词大全
2014/03/21 职场文书
服务行业演讲稿
2014/09/02 职场文书
党的群众路线教育实践活动总结
2014/10/30 职场文书
行政人事主管岗位职责
2015/04/11 职场文书
2015年结对帮扶工作总结
2015/05/04 职场文书
酒店员工手册范本
2015/05/14 职场文书
OpenCV-Python实现人脸美白算法的实例
2021/06/11 Python