用Python画小女孩放风筝的示例

yipeiwu_com6年前Python基础

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

# coding:utf-8
 2import turtle as t
 3import random
 4# 画心
 5def xin():
 6  def curvemove():
 7    for i in range(200):
 8      t.right(1)
 9      t.forward(0.5)
 10  t.color('red','red')
 11  t.begin_fill()
 12  t.left(140)
 13  t.forward(60)
 14  curvemove()
 15  t.left(120)
 16  curvemove()
 17  t.forward(60)
 18  t.end_fill()
 19# 心里面的十字
 20def shizi():
 21  t.pu()
 22  t.goto(170,285)
 23  t.seth(0)
 24  t.pd()
 25  t.color("black","black")
 26  t.circle(1.5)
 27  t.pensize(2)
 28  t.fd(55)
 29  t.pensize(4)
 30  t.circle(1.5)
 31  t.pu()
 32  t.seth(-90)
 33  t.goto(198,295)
 34  t.seth(-90)
 35  t.pensize(2)
 36  t.pd()
 37  t.fd(65)
 38  t.circle(1.5)
 39  t.circle(160,40)
 40  t.circle(-130,27)
 41  t.circle(-60,40)
 42  t.circle(80,60)
 43# 夹子
 44def jiazi2():
 45  def jiazi(angle):
 46    t.pd()
 47    t.pensize(1)
 48    t.color("black","brown")
 49    t.begin_fill()
 50    t.seth(angle)
 51    t.fd(20)
 52    t.seth(angle-240)
 53    t.fd(10)
 54    t.seth(angle-120)
 55    t.fd(20)
 56    t.seth(angle-240)
 57    t.fd(10)
 58    t.end_fill()
 59    t.pu()
 60  # 画夹子
 61  t.pu()
 62  t.goto(216,180)
 63  jiazi(180)
 64  t.goto(230,150)
 65  jiazi(200)
 66  t.goto(250,125)
 67  jiazi(220)
 68  t.goto(265,95)
 69  jiazi(200)
 70  t.goto(275,55)
 71  jiazi(160)
 72# 人
 73def people():
 74  t.pensize(2)
 75  # 皇冠
 76  def huangguan():
 77    t.pu()
 78    t.goto(-200,0)
 79    t.color("gold","gold")
 80    t.pd()
 81    t.begin_fill()
 82    t.seth(120)
 83    t.fd(32)
 84    t.seth(-120)
 85    t.fd(15)
 86    t.seth(150)
 87    t.fd(10)
 88    t.seth(-120)
 89    t.fd(10)
 90    t.seth(160)
 91    t.fd(15)
 92    t.seth(-60)
 93    t.fd(32)
 94    t.seth(50)
 95    t.circle(-40,60)
 96    t.end_fill()
 97  # 脸
 98  def face():
 99    t.pu()
100    t.goto(-212,-3)
101    t.color("black","white")
102    t.pd()
103    t.circle(-40,150)
104  # 头发
105  def hair():
106    t.pu()
107    t.color("black","black")
108    t.goto(-212, -3)
109    angle = -160
110    for i in range(32):
111      t.pd()
112      angle += 1.4
113      t.seth(angle)
114      t.circle(60, 50)
115      t.fd(random.randint(40,45))
116      t.pu()
117      t.goto(-212, -3)
118    angle = -50
119    for i in range(32):
120      t.pd()
121      angle -= 1.5
122      t.seth(angle)
123      t.circle(-60, 50)
124      t.fd(random.randint(38,40))
125      t.pu()
126      t.goto(-212, -5)
127  # 脖子
128  def nick():
129    t.pu()
130    t.goto(-200,-78)
131    t.pd()
132    t.seth(-90)
133    t.fd(10)
134    t.seth(-45)
135    t.fd(20)
136    t.seth(180)
137    t.fd(30)
138    t.seth(55)
139    t.fd(15)
140    t.circle(10,80)
141  # 下半身
142  def body():
143    t.pu()
144    t.goto(-185,-100)
145    t.seth(-65)
146    t.pd()
147    for i in range(120):
148      t.fd(1.5)
149      t.right(0.1)
150    t.seth(220)
151    t.circle(-130,70)
152    t.seth(75)
153    for i in range(130):
154      t.fd(1.5)
155      t.right(0.06)
156  # 腿
157  def leg():
158    t.pu()
159    t.goto(-220,-300)
160    t.pd()
161    t.seth(-90)
162    t.fd(80)
163    t.pensize(5)
164    t.color("red","red")
165    t.fd(8)
166    t.seth(-30)
167    t.pensize(6)
168    t.color("black","black")
169    t.fd(5)
170    t.pu()
171    t.pensize(2)
172    t.goto(-185,-300)
173    t.pd()
174    t.seth(-90)
175    t.fd(80)
176    t.pensize(5)
177    t.color("red","red")
178    t.fd(8)
179    t.seth(-30)
180    t.pensize(6)
181    t.color("black","black")
182    t.fd(5)
183  huangguan()
184  face()
185  nick()
186  body()
187  leg()
188  hair()
189  # 手
190  t.pu()
191  t.goto(-190,-165)
192  t.pensize(2)
193  t.pd()
194  t.seth(49)
195  t.fd(160)
196  t.circle(-10,80)
197  # 眼睛
198  t.pu()
199  t.goto(-185,-30)
200  t.seth(90)
201  t.pd()
202  t.circle(5,180)
203# 星星
204def star(x,y):
205  color = ["blue","yellow","red","gold","orange","pink","green","purple"]
206  t.pencolor(random.choice(color))
207  t.pu()
208  t.goto(x,y)
209  t.pd()
210  t.seth(90)
211  t.fd(8)
212  t.bk(4)
213  t.seth(0)
214  t.fd(4)
215  t.bk(8)
216  t.fd(4)
217  t.seth(45)
218  t.fd(4)
219  t.bk(8)
220  t.fd(4)
221  t.seth(-45)
222  t.fd(4)
223  t.bk(8)
224if __name__ == "__main__":
225  t.pensize(4) # 设置画笔的大小
226  t.color("black") # 设置画笔颜色和填充颜色(pink)
227  t.setup(650, 800) # 设置主窗口的大小为600*800
228  t.speed(10) # 设置画笔速度为10
229  t.pu()
230  t.goto(200, 220)
231  t.pd()
232  # 心
233  xin()
234  # 十字
235  shizi()
236  # 夹子
237  jiazi2()
238  #线
239  t.pu()
240  t.goto(198,280)
241  t.pd()
242  t.seth(-120)
243  t.circle(-1100,22)
244  t.circle(20,90)
245  t.circle(-30,50)
246  t.circle(15,60)
247  # 人
248  people()
249  # 裙子上的点点
250  star(-230, -200)
251  star(-220, -180)
252  star(-200, -150)
253  star(-180, -288)
254  star(-160, -250)
255  star(-210, -150)
256  star(-210, -140)
257  for i in range(10):
258    star(random.randint(-205,-170),random.randint(-300,-200))
259  # 隐藏画笔
260  t.ht()
261  t.done()

效果如下:

以上这篇用Python画小女孩放风筝的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python 计算任意两向量之间的夹角方法

Python 计算任意两向量之间的夹角方法

如图所示,我们要计算任意两个向量之间的夹角。 (图中的坐标数字是估计值,随手给定) python代码如下 import math AB = [1,-3,5,-1] CD = [...

Golang GBK转UTF-8的例子

问题:在 Golang 的调试过程中出现中文乱码 原因:Golang 默认不支持 UTF-8 以外的字符集 解决:将字符串的编码转换成UTF-8 首先需要 mahonia 这个包...

Python手机号码归属地查询代码

Python手机号码归属地查询代码

简单的一个例子,是以前用Dephi写的,前不久刚实现了一个在Python中使用Delphi控件来编写界面程序,于是趁热写一个类似的的查询方案。 本实例是通过www.ip138.com这...

解决在pycharm中显示额外的 figure 窗口问题

解决在pycharm中显示额外的 figure 窗口问题

问题描述 在电脑中重新安装Anaconda3&PyCharm后,运行原来的程序画图时出现了下图界面。 不能弹出如下图所示的“figure”窗口。 解决方法: 这是因为PyCharm在...

Python面向对象思想与应用入门教程【类与对象】

本文实例讲述了Python面向对象思想与应用。分享给大家供大家参考,具体如下: 面向对象思想 1、面向对象的设计思想 面向对象是基于万物皆对象这个哲学观点。 2、面向对象和面向过程...