教你使用python画一朵花送女朋友


Posted in Python onMarch 29, 2018

本文实例为大家分享了用python画一朵花的具体代码,供大家参考,具体内容如下

第一种,画法

教你使用python画一朵花送女朋友

from turtle import *
import time
 
setup(600,800,0,0)
speed(0)
penup()
seth(90)
fd(340)
seth(0)
pendown()
 
speed(5)
begin_fill()
fillcolor('red')
circle(50,30)
 
for i in range(10):
 fd(1)
 left(10)
 
circle(40,40)
 
for i in range(6):
 fd(1)
 left(3)
 
circle(80,40)
 
for i in range(20):
 fd(0.5)
 left(5)
 
circle(80,45)
 
for i in range(10):
 fd(2)
 left(1)
 
circle(80,25)
 
for i in range(20):
 fd(1)
 left(4)
 
circle(50,50)
 
time.sleep(0.1)
 
circle(120,55)
 
speed(0)
 
seth(-90)
fd(70)
 
right(150)
fd(20)
 
left(140)
circle(140,90)
 
left(30)
circle(160,100)
 
left(130)
fd(25)
 
penup()
right(150)
circle(40,80)
pendown()
 
left(115)
fd(60)
 
penup()
left(180)
fd(60)
pendown()
 
end_fill()
 
right(120)
circle(-50,50)
circle(-20,90)
 
speed(1)
fd(75)
 
speed(0)
circle(90,110)
 
penup()
left(162)
fd(185)
left(170)
pendown()
circle(200,10)
circle(100,40)
circle(-52,115)
left(20)
circle(100,20)
circle(300,20)
speed(1)
fd(250)
 
penup()
speed(0)
left(180)
fd(250)
circle(-300,7)
right(80)
circle(200,5)
pendown()
 
left(60)
begin_fill()
fillcolor('green')
circle(-80,100)
right(90)
fd(10)
left(20)
circle(-63,127)
end_fill()
 
penup()
left(50)
fd(20)
left(180)
 
pendown()
circle(200,25)
 
penup()
right(150)
 
fd(180)
 
right(40)
pendown()
begin_fill()
fillcolor('green')
circle(-100,80)
right(150)
fd(10)
left(60)
circle(-80,98)
end_fill()
 
penup()
left(60)
fd(13)
left(180)
 
pendown()
speed(1)
circle(-200,23)
 
 
 
exitonclick()

第二种,画法

教你使用python画一朵花送女朋友

import turtle
import math


def p_line(t, n, length, angle):
 """Draws n line segments."""
 for i in range(n):
 t.fd(length)
 t.lt(angle)


def polygon(t, n, length):
 """Draws a polygon with n sides."""
 angle = 360 / n
 p_line(t, n, length, angle)


def arc(t, r, angle):
 """Draws an arc with the given radius and angle."""
 arc_length = 2 * math.pi * r * abs(angle) / 360
 n = int(arc_length / 4) + 1
 step_length = arc_length / n
 step_angle = float(angle) / n

 # Before starting reduces, making a slight left turn.
 t.lt(step_angle / 2)
 p_line(t, n, step_length, step_angle)
 t.rt(step_angle / 2)


def petal(t, r, angle):
 """Draws a 花瓣 using two arcs."""
 for i in range(2):
 arc(t, r, angle)
 t.lt(180 - angle)


def flower(t, n, r, angle, p):
 """Draws a flower with n petals."""
 for i in range(n):
 petal(t, r, angle)
 t.lt(p / n)


def leaf(t, r, angle, p):
 """Draws a 叶子 and fill it."""
 t.begin_fill() # Begin the fill process.
 t.down()
 flower(t, 1, r, angle, p)
 t.end_fill()


def main():
 window = turtle.Screen() # creat a screen
 window.bgcolor("white")
 window.title("draw a flower")
 lucy = turtle.Turtle()
 lucy.shape("turtle")
 lucy.color("red")
 lucy.width(3)
 # lucy.speed(10)

 # Drawing flower
 flower(lucy, 7, 60, 100, 360)

 # Drawing pedicel
 lucy.color("brown")
 lucy.rt(90)
 lucy.fd(200)

 # Drawing leaf 1
 lucy.width(1)
 lucy.rt(270)
 lucy.color("green")
 leaf(lucy, 40, 80, 180)
 lucy.rt(140)
 lucy.color("black")
 lucy.fd(30)
 lucy.lt(180)
 lucy.fd(30)

 # Drawing leaf 2
 lucy.rt(120)
 lucy.color("green")
 leaf(lucy, 40, 80, 180)
 lucy.color("black")
 lucy.rt(140)
 lucy.fd(30)
 lucy.ht() # hideturtle
 window.exitonclick()


main()

更多精彩书单,请点击python编程必备书单

领取干货:零基础入门学习python视频教程

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

Python 相关文章推荐
快速排序的算法思想及Python版快速排序的实现示例
Jul 02 Python
Python数字图像处理之霍夫线变换实现详解
Jan 12 Python
利用Python对文件夹下图片数据进行批量改名的代码实例
Feb 21 Python
详解python做UI界面的方法
Feb 27 Python
python如何获取列表中每个元素的下标位置
Jul 01 Python
在django admin中添加自定义视图的例子
Jul 26 Python
Python中list的交、并、差集获取方法示例
Aug 01 Python
Pycharm新手使用教程(图文详解)
Sep 17 Python
浅析python 字典嵌套
Sep 29 Python
如何通过python实现IOU计算代码实例
Nov 02 Python
python re.match()用法相关示例
Jan 27 Python
Python内置类型集合set和frozenset的使用详解
Apr 26 Python
使用python生成目录树
Mar 29 #Python
python实现树形打印目录结构
Mar 29 #Python
Python基础教程之利用期物处理并发
Mar 29 #Python
Windows下安装Django框架的方法简明教程
Mar 28 #Python
Python实现的FTP通信客户端与服务器端功能示例
Mar 28 #Python
Python实现发送与接收邮件的方法详解
Mar 28 #Python
Python实现线程状态监测简单示例
Mar 28 #Python
You might like
在MongoDB中模拟Auto Increment的php代码
2011/03/06 PHP
一个显示某段时间内每个月的方法 返回由这些月份组成的数组
2012/05/16 PHP
PHP实现今天是星期几的几种写法
2013/09/26 PHP
getimagesize获取图片尺寸实例
2014/11/15 PHP
PHP判断json格式是否正确的实现代码
2017/09/20 PHP
PHP实现与java 通信的插件使用教程
2019/08/11 PHP
JavaScript返回上一页的三种方法及区别介绍
2015/07/04 Javascript
JavaScript实现显示函数调用堆栈的方法
2016/04/21 Javascript
javascript与jquery动态创建html元素示例
2016/07/25 Javascript
jQuery中ajax错误调试分析
2016/12/01 Javascript
jquery实现刷新随机变化样式特效(tag标签样式)
2017/02/03 Javascript
js获取地址栏参数的两种方法
2017/06/27 Javascript
react build 后打包发布总结
2018/08/24 Javascript
jQuery表单元素过滤选择器用法实例分析
2019/02/20 jQuery
史上最为详细的javascript继承(推荐)
2019/05/18 Javascript
node.js中Buffer缓冲器的原理与使用方法分析
2019/11/23 Javascript
JS定时器如何实现提交成功提示功能
2020/06/12 Javascript
基于openlayers实现角度测量功能
2020/09/28 Javascript
python之wxPython菜单使用详解
2014/09/28 Python
Python实现获取命令行输出结果的方法
2017/06/10 Python
对python中使用requests模块参数编码的不同处理方法
2018/05/18 Python
python批量修改图片尺寸,并保存指定路径的实现方法
2019/07/04 Python
pycharm中显示CSS提示的知识点总结
2019/07/29 Python
Python集成开发工具Pycharm的安装和使用详解
2020/03/18 Python
Python项目跨域问题解决方案
2020/06/22 Python
Python unittest discover批量执行代码实例
2020/09/08 Python
HTML5+CSS3绘制锯齿状的矩形
2016/03/01 HTML / CSS
详解前端HTML5几种存储方式的总结
2016/12/27 HTML / CSS
耐克波兰官方网站:Nike波兰
2019/09/03 全球购物
小学社会实践活动总结
2014/07/03 职场文书
群众路线专项整治工作情况报告
2014/10/28 职场文书
合作合同协议书范本
2015/01/27 职场文书
2015年药品销售工作总结范文
2015/05/25 职场文书
开学季:喜迎新生,迎新标语少不了
2019/11/07 职场文书
MySQL数据库实验之 触发器和存储过程
2022/06/21 MySQL
MySQL中TIMESTAMP类型返回日期时间数据中带有T的解决
2022/12/24 MySQL