原标题:用 Python 绘制美丽的樱花

黑夜可能漫长,但总会迎来温暖的阳光,三月如期而至,武大的樱花又一次盛开。那么今天就一起来看看怎样在python中画一棵美丽的樱花树~

说到用python画画,那当然就是小乌龟Turtle库了,为啥是turtle呢,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。

一、安装与引入

安装没有什么难度,直接pip安装就可以

pip install turtle

可使用以下3种方法引入:

二、使用

turtle库使用起来也很简单,主要就是利用几个核心的控制代码

turtle.goto(x,y):直接跳转到(x,y)点,以绘图窗口中心为原点,

turtle.fd(d):以当前方向,往前行进d像素。

turtle.bk(d):保持当前方向不变,往后退行d像素。

turtle.circle(r,angle):以r为半径圆的angle角度旋转。

turtle.penup:抬笔

turtle.pendown:落笔

urtle.left(angle):向左旋转angle度。

turtle.right(angle):向右旋转angle度。

比如绘制树干部分的代码可以这样写

defTree(branch, t):

time.sleep( 0.0005)

ifbranch > 3:

if6<= branch <= 12: #

ifrandom.randint( 0, 2) == 0: #随机绘制

t.color( 'snow') #设置颜色

else:

t.color( 'lightcoral') # 树叶颜色

t.pensize(branch / 3)

elifbranch < 6:

ifrandom.randint( 0, 1) == 0:

t.color( 'snow')

else:

t.color( 'lightcoral') #

t.pensize(branch / 2)

else:

t.color( 'sienna') # 赭(zhě)色

t.pensize(branch / 10) # 6

t.forward(branch)

a = 1.5* random.random

t.right( 20* a)

b = 1.5* random.random

Tree(branch - 10* b, t)

t.left( 40* a)

Tree(branch - 10* b, t)

t.right( 20* a)

t.up

t.backward(branch)

t.down

而写字的部分就不用一笔一划的去绘制,直接使用turtle.write就可以在指定位置写上你需要的文字。

write(arg,move=false,align= 'left',font=( 'arial', 8, 'normal'))

#arg--将写入Turtle绘画屏幕的文字。

#align(可选)--“左(left)”、“中(center)”或“右(right)”之一。

#font(可选)--(fontname、fontsize、fonttype)。

完整代码可以在公众号内回复 樱花获取,那么来看看最后效果吧! 返回搜狐,查看更多

责任编辑:

python樱花_用 Python 绘制美丽的樱花相关推荐

  1. 第一章 第一节:Python基础_认识Python

    Python基础入门(全套保姆级教程) 第一章 第一节:Python基础_认识Python 1. 什么是编程 通俗易懂,编程就是用代码编写程序,编写程序有很多种办法,像c语言,javaPython语言 ...

  2. java python算法_用Python,Java和C ++示例解释的排序算法

    java python算法 什么是排序算法? (What is a Sorting Algorithm?) Sorting algorithms are a set of instructions t ...

  3. excel python插件_利用 Python 插件 xlwings 读写 Excel

    Python 通过 xlwings 读取 Excel 数据 去年底公司让我做设备管理,多次委婉拒绝,最终还是做了.其实我比较喜欢技术.做管理后发现现场没有停机率统计,而原始数据有,每次要自己在Exce ...

  4. 网络安全用python吗_使用Python进行网络安全渗透——密码攻击测试器

    相关文章: 本篇将会涉及: HTTP 基本认证 对HTTP Basic认证进行密码暴力攻击测试 什么是HTTP 基本认证 HTTP基本认证(HTTP Basic Authentication)是HTT ...

  5. 动态照片墙 python 实现_利用python生成照片墙的示例代码

    这篇文章主要介绍了利用python生成照片墙的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 PIL(Python Im ...

  6. python字符串_(Python基础教程之七)Python字符串操作

    Python基础教程 在SublimeEditor中配置Python环境 Python代码中添加注释 Python中的变量的使用 Python中的数据类型 Python中的关键字 Python字符串操 ...

  7. python范例_最佳Python代码范例

    python范例 Python is a general purpose programming language which is dynamically typed, interpreted, a ...

  8. python重构_重构Python应用程序以简化操作

    python重构 Do you want simpler Python code? You always start a project with the best intentions, a cle ...

  9. python 字符识别_使用python进行光学字符识别入门

    python 字符识别 语言模型设计 (Language Model Designing) Optical Character Recognition is the conversion of 2-D ...

最新文章

  1. Quartz 实现分布式任务调度
  2. 如何使用T-SQL临时禁用外键约束?
  3. 成都铁路警方联合多部门开展反恐防暴演练
  4. python爬取动态网页的内容
  5. 转 Celery 使用
  6. Catlike Coding网站文章解析 -- 1.Procedural Grid
  7. No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK? ide
  8. C++ - 构造和析构 2018-01-10
  9. 大型网站系统架构实践(一)从简单到复杂
  10. XML文档搜索使用小结
  11. 如何检测java安装成功_如何检查jdk是否安装成功
  12. 智能网联汽车OTA升级安全设计
  13. 当我们在谈论机器人的时候我们在谈论什么?
  14. java 英文月份_java SimpleDateFormat处理英文3位字母月份时的注意事项
  15. 根据身份证解析出生年月
  16. Seata源码走读分析
  17. springmvc--sso单点登录cas统一身份认证器
  18. JVM中的垃圾回收机制
  19. 2005年九大受宠技术:HSDPA
  20. 无影云电脑体验季来了!免费的桌面就是香!

热门文章

  1. MySQL学习笔记(limit的用法)
  2. 与君欢喜城 暖色度余生
  3. WebStorm常用配置及快捷键
  4. php 安装 cgi,PHP CGI配置选项说明
  5. 2021.10.13股票小计
  6. 关于移动电话号码的几个标准
  7. Java之抽象类接口
  8. android tv二级菜单,android TV开发:弹出菜单实现
  9. CTFshow web42 43 44 45 46 47
  10. 字节跳动一面通过率_我去面试了字节跳动管理岗!