python3实现用turtle模块画一棵随机樱花树


Posted in Python onNovember 21, 2019

废话不多说了,直接上代码吧!

#!/usr/bin/env python
# coding=utf-8
# 画一棵樱花
 
 
import turtle
import random
from turtle import *
from time import sleep
 
 
# 画樱花的躯干(60,t)
def tree(branchLen,t):
  sleep(0.0005)
  if branchLen >3:
    if 8<= branchLen <=12:
      if random.randint(0,2) == 0:
        t.color('snow') # 白
      else:
        t.color('lightcoral') # 淡珊瑚色
      t.pensize(branchLen / 3)
    elif branchLen <8:
      if random.randint(0,1) == 0:
        t.color('snow')
      else:
        t.color('lightcoral') # 淡珊瑚色
      t.pensize(branchLen / 2)
    else:
      t.color('sienna') # 赭(zhě)色
      t.pensize(branchLen / 10) # 6
    t.forward(branchLen)
    a = 1.5 * random.random()
    t.right(20*a)
    b = 1.5 * random.random()
    tree(branchLen-10*b, t)
    t.left(40*a)
    tree(branchLen-10*b, t)
    t.right(20*a)
    t.up()
    t.backward(branchLen)
    t.down()
 
# 掉落的花瓣
def petal(m, t):
  for i in range(m):
    a = 200 - 400 * random.random()
    b = 10 - 20 * random.random()
    t.up()
    t.forward(b)
    t.left(90)
    t.forward(a)
    t.down()
    t.color('lightcoral') # 淡珊瑚色
    t.circle(1)
    t.up()
    t.backward(a)
    t.right(90)
    t.backward(b)
 
def main():
  # 绘图区域
  t = turtle.Turtle()
  # 画布大小
  w = turtle.Screen()
  t.hideturtle() # 隐藏画笔
  getscreen().tracer(5,0)
  w.screensize(bg='wheat') # wheat小麦
  t.left(90)
  t.up()
  t.backward(150)
  t.down()
  t.color('sienna')
 
  # 画樱花的躯干
  tree(60,t)
  # 掉落的花瓣
  petal(200, t)
  w.exitonclick()
 
main()

python3实现用turtle模块画一棵随机樱花树

以上这篇python3实现用turtle模块画一棵随机樱花树就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
深入浅析python继承问题
May 29 Python
Python中的pygal安装和绘制直方图代码分享
Dec 08 Python
Python中sort和sorted函数代码解析
Jan 25 Python
Python科学计算包numpy用法实例详解
Feb 08 Python
浅谈Python Opencv中gamma变换的使用详解
Apr 02 Python
python控制windows剪贴板,向剪贴板中写入图片的实例
May 31 Python
使用Python进行目录的对比方法
Nov 01 Python
Python处理session的方法整理
Aug 29 Python
pycharm远程连接vagrant虚拟机中mariadb数据库
Jun 05 Python
Django实现随机图形验证码的示例
Oct 15 Python
Pandas实现DataFrame的简单运算、统计与排序
Mar 31 Python
使用Python开发冰球小游戏
Apr 30 Python
用python中的matplotlib绘制方程图像代码
Nov 21 #Python
python hash每次调用结果不同的原因
Nov 21 #Python
python/Matplotlib绘制复变函数图像教程
Nov 21 #Python
Python 复平面绘图实例
Nov 21 #Python
Python3并发写文件与Python对比
Nov 20 #Python
python实现高斯(Gauss)迭代法的例子
Nov 20 #Python
python、Matlab求定积分的实现
Nov 20 #Python
You might like
SONY SRF-40W电路分析
2021/03/02 无线电
我常用的几个类
2006/10/09 PHP
ThinkPHP进程计数类Process用法实例详解
2015/09/25 PHP
js 加载并解析XML字符串的代码
2009/12/13 Javascript
用js实现判断当前网址的来路如果不是指定的来路就跳转到指定页面
2011/05/02 Javascript
js onload事件不起作用示例分析
2013/10/09 Javascript
JS实现选择TextArea内文本的方法
2015/08/03 Javascript
javascript跨域的方法汇总
2015/10/23 Javascript
JavaScript中获取Radio被选中的值
2015/11/11 Javascript
不得不分享的JavaScript常用方法函数集(下)
2015/12/25 Javascript
分享网页检测摇一摇实例代码
2016/01/14 Javascript
jQuery中checkbox反复调用attr('checked', true/false)只有第一次生效的解决方法
2016/11/16 Javascript
js评分组件使用详解
2017/06/06 Javascript
讲解vue-router之什么是动态路由
2018/05/28 Javascript
微信小程序如何修改radio和checkbox的默认样式和图标
2019/07/24 Javascript
[37:22]DOTA2上海特级锦标赛D组资格赛#2 Liquid VS VP第一局
2016/02/28 DOTA
[00:34]TI7不朽珍藏III——纯金地穴编织者饰品展示
2017/07/15 DOTA
Python3简单实例计算同花的概率代码
2017/12/06 Python
python得到单词模式的示例
2018/10/15 Python
django框架CSRF防护原理与用法分析
2019/07/22 Python
python GUI库图形界面开发之PyQt5信号与槽机制、自定义信号基础介绍
2020/02/25 Python
python GUI库图形界面开发之PyQt5信号与槽基础使用方法与实例
2020/03/06 Python
python实现将range()函数生成的数字存储在一个列表中
2020/04/02 Python
Python JSON常用编解码方法代码实例
2020/09/05 Python
HTML5输入框下拉菜单功能的示例代码
2020/09/08 HTML / CSS
THE OUTNET英国官网:国际设计师品牌折扣网站
2016/08/14 全球购物
Java 中访问数据库的步骤?Statement 和PreparedStatement 之间的区别?
2012/06/05 面试题
学校门卫工作职责
2013/12/07 职场文书
大学生秋游活动方案
2014/02/17 职场文书
监察建议书格式
2014/05/19 职场文书
自我介绍演讲稿范文
2014/08/21 职场文书
关于读书的演讲稿400字
2014/08/27 职场文书
老干部工作汇报材料
2014/10/28 职场文书
MySQL 8.0 Online DDL快速加列的相关总结
2021/06/02 MySQL
Python实现PIL图像处理库绘制国际象棋棋盘
2021/07/16 Python
Win10系统搭建ftp文件服务器详细教程
2022/08/05 Servers