仙人球
import turtleturtle.shape('turtle')turtle.color('orange', 'green')turtle.begin_fill()while True: turtle.forward(200) turtle.left(170) if abs(turtle.pos()) < 1: breakturtle.end_fill()turtle.done()
国旗
import turtleturtle.shape('turtle')turtle.screensize(2000, 2000, 'white') # 设置画布大小turtle.speed(9)# 绘制旗面turtle.pencolor('red')# pu()turtle.goto(-300, -200)turtle.pd()turtle.fillcolor('red')turtle.begin_fill()for i in range(0, 2): turtle.fd(600) turtle.lt(90) turtle.fd(400) turtle.lt(90)turtle.end_fill()# 绘制大五角星turtle.pu()turtle.pencolor('yellow')turtle.goto(-260, 120)turtle.pd()turtle.fillcolor('yellow')turtle.begin_fill()for i in range(0, 5): turtle.fd(113.137) # 大星一划的边长 turtle.rt(144)turtle.end_fill()# 绘制四个小五角星list1 = [(-100, 160), (-60, 120), (-60, 60), (-100, 20)] # 四个五角星的中心坐标list2 = [31.98, 8.13, -15.59, -38.66] # 相对角度0的后退1.111需要左转的角度for j in range(0, 4): turtle.seth(0) # 这是龟头角度为0 turtle.pu() turtle.goto(list1[j]) # 定位到五角星中心 turtle.lt(list2[j]) # 旋转角度,以背向指向大五角星的角尖 turtle.bk(20) # 从五角星中心到指向大五角星的角尖(龟倒着爬)退一个小圆半径 turtle.lt(18) # 五角星的半角角度 turtle.pd() turtle.begin_fill() for i in range(0, 5): turtle.fd(113.137 / 3) # 小星一划的边长 turtle.rt(144) turtle.end_fill()turtle.pu()turtle.ht()turtle.done()
玫瑰花
import turtleimport timeturtle.shape('turtle')turtle.speed(5)# 设置初始位置turtle.penup()turtle.left(90)turtle.fd(200)turtle.pendown()turtle.right(90)# 花蕊turtle.fillcolor("red")turtle.begin_fill()turtle.circle(10,180)turtle.circle(25,110)turtle.left(50)turtle.circle(60,45)turtle.circle(20,170)turtle.right(24)turtle.fd(30)turtle.left(10)turtle.circle(30,110)turtle.fd(20)turtle.left(40)turtle.circle(90,70)turtle.circle(30,150)turtle.right(30)turtle.fd(15)turtle.circle(80,90)turtle.left(15)turtle.fd(45)turtle.right(165)turtle.fd(20)turtle.left(155)turtle.circle(150,80)turtle.left(50)turtle.circle(150,90)turtle.end_fill()# 花瓣1turtle.left(150)turtle.circle(-90,70)turtle.left(20)turtle.circle(75,105)turtle.setheading(60)turtle.circle(80,98)turtle.circle(-90,40)# 花瓣2turtle.left(180)turtle.circle(90,40)turtle.circle(-80,98)turtle.setheading(-83)# 叶子1turtle.fd(30)turtle.left(90)turtle.fd(25)turtle.left(45)turtle.fillcolor("green")turtle.begin_fill()turtle.circle(-80,90)turtle.right(90)turtle.circle(-80,90)turtle.end_fill()turtle.right(135)turtle.fd(60)turtle.left(180)turtle.fd(85)turtle.left(90)turtle.fd(80)# 叶子2turtle.right(90)turtle.right(45)turtle.fillcolor("green")turtle.begin_fill()turtle.circle(80,90)turtle.left(90)turtle.circle(80,90)turtle.end_fill()turtle.left(135)turtle.fd(60)turtle.left(180)turtle.fd(60)turtle.right(90)turtle.circle(200,60)turtle.done()
彩色树
import turtleturtle.shape('turtle')# 设置色彩模式是RGB:turtle.colormode(255)turtle.lt(90)lv = 14l = 120s = 45turtle.width(lv)# 初始化RGB颜色:r = 0g = 0b = 0turtle.pencolor(r, g, b)turtle.penup()turtle.bk(l)turtle.pendown()turtle.fd(l)def draw_tree(l, level): global r, g, b # save the current pen width w = turtle.width() # narrow the pen width turtle.width(w * 3.0 / 4.0) # set color: r = r + 1 g = g + 2 b = b + 3 turtle.pencolor(r % 200, g % 200, b % 200) l = 3.0 / 4.0 * l turtle.lt(s) turtle.fd(l) if level < lv: draw_tree(l, level + 1) turtle.bk(l) turtle.rt(2 * s) turtle.fd(l) if level < lv: draw_tree(l, level + 1) turtle.bk(l) turtle.lt(s) # restore the previous pen width turtle.width(w)turtle.speed("fastest")draw_tree(l, 4)turtle.done()
随机樱花树
# 每次运行 树的形状是随机的import turtle as Timport randomimport time# 画樱花的躯干(60,t)def Tree(branch, t): time.sleep(0.0005) if branch > 3: if 8 <= branch <= 12: if random.randint(0, 2) == 0: t.color('snow') # 白 else: t.color('lightcoral') # 淡珊瑚色 t.pensize(branch / 3) elif branch < 8: if random.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()# 掉落的花瓣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)# 绘图区域t = T.Turtle()# 画布大小w = T.Screen()t.shape('turtle')# t.hideturtle() # 隐藏画笔t.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()T.done()
爱情树
import randomimport turtledef love(x, y): # 在(x,y)处画爱心lalala lv = turtle.Turtle() lv.hideturtle() lv.up() lv.goto(x, y) # 定位到(x,y) def curvemove(): # 画圆弧 for i in range(20): lv.right(10) lv.forward(2) lv.color('red', 'pink') lv.speed(0) lv.pensize(1) # 开始画爱心lalala lv.down() lv.begin_fill() lv.left(140) lv.forward(22) curvemove() lv.left(120) curvemove() lv.forward(22) lv.write("{}".format("I Love You!"), font=("Arial", 10, "normal"), align="center") lv.left(140) # 画完复位 lv.end_fill()def tree(branchLen, t): if branchLen > 5: # 剩余树枝太少要结束递归 if branchLen < 20: # 如果树枝剩余长度较短则变绿 t.color("green") t.pensize(random.uniform((branchLen + 5) / 4 - 2, (branchLen + 6) / 4 + 5)) t.down() t.forward(branchLen) love(t.xcor(), t.ycor()) # 传输现在turtle的坐标 t.up() t.backward(branchLen) t.color("brown") return t.pensize(random.uniform((branchLen + 5) / 4 - 2, (branchLen + 6) / 4 + 5)) t.down() t.forward(branchLen) # 以下递归 ang = random.uniform(15, 45) t.right(ang) tree(branchLen - random.uniform(12, 16), t) # 随机决定减小长度 t.left(2 * ang) tree(branchLen - random.uniform(12, 16), t) # 随机决定减小长度 t.right(ang) t.up() t.backward(branchLen)def Fonts(): t.penup() t.goto(-300, -300) t.pencolor('red') t.write("我爱你!^_^", font=('方正行黑简体', 30, 'normal'))myWin = turtle.Screen()t = turtle.Turtle()t.hideturtle()t.speed(0)t.left(90)t.up()t.backward(200)t.down()t.color("brown")t.pensize(32)t.forward(60)tree(100, t)Fonts()myWin.exitonclick()
哆啦A梦
import turtledef flyTo(x, y): turtle.penup() turtle.goto(x, y) turtle.pendown()def drawEye(): turtle.tracer(False) a = 2.5 for i in range(120): if 0 <= i < 30 or 60 <= i < 90: a -= 0.05 else: a += 0.05 turtle.left(3) turtle.fd(a) turtle.tracer(True)def beard(): """ 画胡子, 一共六根 """ # 左边第一根胡子 flyTo(-37, 135) turtle.seth(165) turtle.fd(60) # 左边第二根胡子 flyTo(-37, 125) turtle.seth(180) turtle.fd(60) # 左边第三根胡子 flyTo(-37, 115) turtle.seth(193) turtle.fd(60) # 右边第一根胡子 flyTo(37, 135) turtle.seth(15) turtle.fd(60) # 右边第二根胡子 flyTo(37, 125) turtle.seth(0) turtle.fd(60) # 右边第三根胡子 flyTo(37, 115) turtle.seth(-13) turtle.fd(60)def drawRedScarf(): """ 画围巾 """ turtle.fillcolor("red") # 填充颜色 turtle.begin_fill() turtle.seth(0) # 朝向右 turtle.fd(200) # 前进10个单位 turtle.circle(-5, 90) turtle.fd(10) turtle.circle(-5, 90) turtle.fd(207) turtle.circle(-5, 90) turtle.fd(10) turtle.circle(-5, 90) turtle.end_fill()def drawMouse(): flyTo(5, 148) turtle.seth(270) turtle.fd(100) turtle.seth(0) turtle.circle(120, 50) turtle.seth(230) turtle.circle(-120, 100)def drawRedNose(): flyTo(-10, 158) turtle.fillcolor("red") # 填充颜色 turtle.begin_fill() turtle.circle(20) turtle.end_fill()def drawBlackdrawEye(): turtle.seth(0) flyTo(-20, 195) turtle.fillcolor("#000000") # 填充颜色 turtle.begin_fill() turtle.circle(13) turtle.end_fill() turtle.pensize(6) flyTo(20, 205) turtle.seth(75) turtle.circle(-10, 150) turtle.pensize(3) flyTo(-17, 200) turtle.seth(0) turtle.fillcolor("#ffffff") turtle.begin_fill() turtle.circle(5) turtle.end_fill() flyTo(0, 0)def drawFace(): turtle.forward(183) # 前行183个单位 turtle.fillcolor("white") # 填充颜色为白色 turtle.begin_fill() # 开始填充 turtle.left(45) # 左转45度 turtle.circle(120, 100) # 右边那半边脸 turtle.seth(90) # 朝向向上 drawEye() # 画右眼睛 turtle.seth(180) # 朝向左 turtle.penup() # 抬笔 turtle.fd(60) # 前行60 turtle.pendown() # 落笔 turtle.seth(90) # 朝向上 drawEye() # 画左眼睛 turtle.penup() # 抬笔 turtle.seth(180) # 朝向左 turtle.fd(64) # 前进64 turtle.pendown() # 落笔 turtle.seth(215) # 修改朝向 turtle.circle(120, 100) # 左边那半边脸 turtle.end_fill() #def drawHead(): """ 画了一个被切掉下半部分的圆 """ turtle.penup() # 抬笔 turtle.circle(150, 40) # 画圆, 半径150,圆周角40 turtle.pendown() # 落笔 turtle.fillcolor("#00a0de") # 填充色 turtle.begin_fill() # 开始填充 turtle.circle(150, 280) # 画圆,半径150, 圆周角280 turtle.end_fill()def drawAll(): drawHead() drawRedScarf() drawFace() drawRedNose() drawMouse() beard() flyTo(0, 0) turtle.seth(0) turtle.penup() turtle.circle(150, 50) turtle.pendown() turtle.seth(30) turtle.fd(40) turtle.seth(70) turtle.circle(-30, 270) turtle.fillcolor("#00a0de") turtle.begin_fill() turtle.seth(230) turtle.fd(80) turtle.seth(90) turtle.circle(1000, 1) turtle.seth(-89) turtle.circle(-1000, 10) turtle.seth(180) turtle.fd(70) turtle.seth(90) turtle.circle(30, 180) turtle.seth(180) turtle.fd(70) turtle.seth(100) turtle.circle(-1000, 9) turtle.seth(-86) turtle.circle(1000, 2) turtle.seth(230) turtle.fd(40) turtle.circle(-30, 230) turtle.seth(45) turtle.fd(81) turtle.seth(0) turtle.fd(203) turtle.circle(5, 90) turtle.fd(10) turtle.circle(5, 90) turtle.fd(7) turtle.seth(40) turtle.circle(150, 10) turtle.seth(30) turtle.fd(40) turtle.end_fill() # 左手 turtle.seth(70) turtle.fillcolor("#FFFFFF") turtle.begin_fill() turtle.circle(-30) turtle.end_fill() # 脚 flyTo(103.74, -182.59) turtle.seth(0) turtle.fillcolor("#FFFFFF") turtle.begin_fill() turtle.fd(15) turtle.circle(-15, 180) turtle.fd(90) turtle.circle(-15, 180) turtle.fd(10) turtle.end_fill() flyTo(-96.26, -182.59) turtle.seth(180) turtle.fillcolor("#FFFFFF") turtle.begin_fill() turtle.fd(15) turtle.circle(15, 180) turtle.fd(90) turtle.circle(15, 180) turtle.fd(10) turtle.end_fill() # 右手 flyTo(-133.97, -91.81) turtle.seth(50) turtle.fillcolor("#FFFFFF") turtle.begin_fill() turtle.circle(30) turtle.end_fill() # 口袋 flyTo(-103.42, 15.09) turtle.seth(0) turtle.fd(38) turtle.seth(230) turtle.begin_fill() turtle.circle(90, 260) turtle.end_fill() flyTo(5, -40) turtle.seth(0) turtle.fd(70) turtle.seth(-90) turtle.circle(-70, 180) turtle.seth(0) turtle.fd(70) # 铃铛 flyTo(-103.42, 15.09) turtle.fd(90) turtle.seth(70) turtle.fillcolor("#ffd200") turtle.begin_fill() turtle.circle(-20) turtle.end_fill() turtle.seth(170) turtle.fillcolor("#ffd200") turtle.begin_fill() turtle.circle(-2, 180) turtle.seth(10) turtle.circle(-100, 22) turtle.circle(-2, 180) turtle.seth(180 - 10) turtle.circle(100, 22) turtle.end_fill() flyTo(-13.42, 15.09) turtle.seth(250) turtle.circle(20, 110) turtle.seth(90) turtle.fd(15) turtle.dot(10) flyTo(0, -150) drawBlackdrawEye()def main(): turtle.screensize(800, 6000, "#F0F0F0") turtle.pensize(3) turtle.speed(9) drawAll()if __name__ == "__main__": main() turtle.mainloop()
时钟
import turtlefrom datetime import *# 抬起画笔,向前运动一段距离放下def Skip(step): turtle.penup() turtle.forward(step) turtle.pendown()def mkHand(name, length): # 注册Turtle形状,建立表针Turtle turtle.reset() Skip(-length * 0.1) # 开始记录多边形的顶点。当前的乌龟位置是多边形的第一个顶点。 turtle.begin_poly() turtle.forward(length * 1.1) # 停止记录多边形的顶点。当前的乌龟位置是多边形的最后一个顶点。将与第一个顶点相连。 turtle.end_poly() # 返回最后记录的多边形。 handForm = turtle.get_poly() turtle.register_shape(name, handForm)def Init(): global secHand, minHand, hurHand, printer # 重置Turtle指向北 turtle.mode("logo") # 建立三个表针Turtle并初始化 mkHand("secHand", 135) mkHand("minHand", 125) mkHand("hurHand", 90) secHand = turtle.Turtle() secHand.shape("secHand") minHand = turtle.Turtle() minHand.shape("minHand") hurHand = turtle.Turtle() hurHand.shape("hurHand") for hand in secHand, minHand, hurHand: hand.shapesize(1, 1, 3) hand.pencolor('orange') hand.speed(0) # 建立输出文字Turtle printer = turtle.Turtle() printer.pencolor('red') # 隐藏画笔的turtle形状 printer.hideturtle() printer.penup()def SetupClock(radius): # 建立表的外框 turtle.reset() turtle.pencolor('blue') turtle.pensize(7) for i in range(60): Skip(radius) if i % 5 == 0: turtle.forward(20) Skip(-radius - 20) Skip(radius + 20) if i == 0: turtle.write(int(12), align="center", font=("Courier", 14, "bold")) elif i == 30: Skip(25) turtle.write(int(i / 5), align="center", font=("Courier", 14, "bold")) Skip(-25) elif (i == 25 or i == 35): Skip(20) turtle.write(int(i / 5), align="center", font=("Courier", 14, "bold")) Skip(-20) else: turtle.write(int(i / 5), align="center", font=("Courier", 14, "bold")) Skip(-radius - 20) else: turtle.dot(5) Skip(-radius) turtle.right(6)def Week(t): week = ["星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日"] return week[t.weekday()]def Date(t): y = t.year m = t.month d = t.day return "%s-%d-%d" % (y, m, d)def Tick(): # 绘制表针的动态显示 t = datetime.today() second = t.second + t.microsecond * 0.000001 minute = t.minute + second / 60.0 hour = t.hour + minute / 60.0 secHand.setheading(6 * second) minHand.setheading(6 * minute) hurHand.setheading(30 * hour) turtle.tracer(False) printer.forward(65) printer.write(Week(t), align="center", font=("Courier", 14, "bold")) printer.back(130) printer.write(Date(t), align="center", font=("Courier", 14, "bold")) printer.home() turtle.tracer(True) # 100ms后继续调用tick turtle.ontimer(Tick, 100)def main(): # 打开/关闭龟动画,并为更新图纸设置延迟。 turtle.tracer(False) Init() SetupClock(160) turtle.tracer(True) Tick() turtle.done()if __name__ == "__main__": main()
派优网部分新闻资讯、展示的图片素材等内容均为用户自发上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习交流。用户通过本站上传、发布任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请
联系我们一经核实,立即删除。并对发布账号进行封禁。
相关推荐
-
在电商平台上,书籍类目的市场竞争相当激烈,其中3钻以上的卖家占据了重要的地位。下面将从几个方面详细分析书籍类目3钻以上卖家的现状,以及是否可以开直通车进行推广。 一、书籍类目3钻以…
-
随着技术和工具的提升,很多喜欢游戏或者有想法的新手或玩家都对游戏研发跃跃欲试。此前,很多人给新手的一条普遍建议是:把目标放小,努力完成一个项目。然而,对于大开脑洞的很多新手来说,控…
-
有些人就问,注册小号干吗用,有些人用不着,有些人就用的着,你懂得(***),想做***的可以微信关注 隔壁老李爱搞机 完全免费,不收一分钱。目前同一**下只能关联4个支付宝账户,分…
-
罗马神话中,百合花是在婚姻与家庭的守护神朱诺的乳汁中诞生的。据说在遥远的古代,智利只有白色和蓝色两种百合花。 公元16世纪,印第安人与西班牙殖民者进行抗争时,由于叛徒的出卖,士兵们…
-
很多人对“城府”两个字是忌讳的。 认为城府很深的人,就是暗处的小人,就像害虫一样,冷不丁冒出来。 其实,城府很深的人,只要心眼不坏,就能成大器。 正如《格言集锦》里所言:“室有芝兰…
-
淘宝旺旺群发广告是商家在淘宝平台上进行促销和宣传的一种有效方式。以下是一篇关于淘宝旺旺群发广告操作和技巧的文章,全文约1500字,符合百度SEO优化。 淘宝旺旺群发广告操作步骤: …
-
现在市场上有很多仿名牌的产品,我们购买的时候有注意。armani阿玛尼满天星手表真假怎么看你知道吗?下面小编给大家讲讲。 armani阿玛尼满天星手表真假怎么看 1、看手表做工 以…
-
Mybrushes Pro拥有近百种真实的画笔效果,可以轻松实现水墨画、国画、水彩、油画、素描甚至中国书法等等你想得到的绘画风格。把你的想象力和艺术细胞都发挥出来,让你的小伙伴们大…
-
如果你是一位设计师或者摄影师,那么你一定知道PS2023这个软件。PS2023是Adobe公司推出的一款图像处理软件,它可以帮助你完成各种复杂的图像处理任务,如修图、合成、调色等等…
-
许多人都知道,“重庆”这个城市名,得名于南宋时期,淳熙十六年八月初七,宋光宗将自己的潜藩“恭州”百思特网升府改名为“重庆”。 至此,“重庆”这个城市名就伴随着这座拥有3000多年历…