赞
踩
这些程序大多取自或借鉴网上源码,整理在此,便于初学者借鉴,提高学习兴趣。包括:风车动画、小轿车、新年贺卡、动态贺卡
一、风车动画
效果图如下:
源代码如下:
- import turtle as t
-
- t.pensize(2)
- t.hideturtle()
- windSpeed = 2
- radius = 50
-
- def windmill(c):
- t.pencolor(c)
- t.tracer(False) #隐藏绘制轨迹,之后用update()直接出图
- for i in range(4):
- t.forward(2*radius)
- t.right(90)
- t.circle(-radius,180)
-
- while True:
- windmill('red')
- t.update() #刷新图画
- windmill('white') #在此用背景色白色重绘风车,以此清除之前的黑色轨迹
- t.right(windSpeed)
-
- t.done()
二、小轿车
源码如下:
- import turtle as t
- #车身
- t.penup()
- t.goto(-130,0)
- t.pencolor("red")
- t.pendown()
- t.goto(-75,0)
- t.penup()
- t.goto(-25,0)
- t.pendown()
- t.pencolor("red")
- t.goto(50,0)
- t.penup()
- t.goto(100,0)
- t.pendown()
- t.pencolor("red")
- t.goto(125,0)
- t.color("red")
- t.begin_fill()
- t.goto(125,40)
- t.goto(120,40)
- t.goto(65,70)
- t.goto(-40,70)
- t.goto(-75,40)
- t.goto(-105,40)
- t.goto(-130,0)
- t.end_fill()
-
- #轮
- t.penup()
- t.goto(-50,-25)
- t.color("black")
- t.begin_fill()
- t.pendown()
- t.circle(25)
- t.end_fill()
- t.penup()
- t.goto(75,-25)
- t.color("black")
- t.begin_fill()
- t.pendown()
- t.circle(25)
- t.end_fill()
-
- #门
- t.penup()
- t.pensize(4)
- t.goto(-40,65)
- t.pendown()
- t.pencolor("black")
- t.color("blue")
- t.begin_fill()
- t.goto(-65,40)
- t.goto(65,40)
- t.goto(65,65)
- t.goto(-40,65)
- t.end_fill()
- t.penup()
- t.goto(15,65)
- t.pendown()
- t.pencolor("black")
- t.goto(15,5)
- t.penup()
- t.goto(-65,40)
- t.pendown()
- t.goto(-65,5)
- t.goto(15,5)
- t.goto(65,5)
- t.goto(65,40)
- t.penup()
- t.goto(0,30)
- t.pendown()
- t.goto(30,30)
- t.pensize(2)
-
- #标志
- t.penup()
- t.goto(-105,40)
- t.pencolor("black")
- t.pendown()
- t.goto(-105,5)
- t.goto(-125,5)
- t.goto(-110,5)
- t.goto(-110,30)
- t.penup()
- t.goto(-115,5)
- t.pendown()
- t.goto(-115,23)
- t.penup()
- t.goto(126,20)
- t.color("black")
- t.begin_fill()
- t.pendown()
- t.goto(100,20)
- t.goto(100,0)
- t.goto(126,0)
- t.goto(126,20)
- t.end_fill()
-
- #灯
- t.penup()
- t.goto(-100,16)
- t.pendown()
- t.color("orange")
- t.begin_fill()
- t.circle(12,-180)
- t.goto(-100,16)
- t.end_fill()
- t.penup()
- t.goto(110,43)
- t.pendown()
- t.color("orange")
- t.begin_fill()
- t.circle(11,-180)
- t.goto(110,43)
- t.end_fill()
-
- t.hideturtle()
- t.done()
三、新年贺卡
效果图如下:
源代码如下:
- import turtle as t
- t.color("red")
- t.write("万\n事\n大\n吉", font=("华文行楷", 45, "normal"))
- t.penup()
- t.goto(80,0)
- t.pendown()
- t.write("新\n年\n快\n乐", font=("华文行楷", 45, "normal"))
-
- t.penup()
- t.goto(-120,110)
- t.pendown()
- t.write("李\n一\n民\n贺", font=("方正舒体", 20, "normal"))
-
- t.penup()
- t.goto(-130,0)
- t.color("red")
- t.pendown()
- t.begin_fill()
- t.forward(55)
- t.left(90)
- t.forward(55)
- t.left(90)
- t.forward(55)
- t.left(90)
- t.forward(55)
- t.left(90)
- t.end_fill()
-
- t.color("white")
- t.penup()
- t.goto(-100,0)
- t.pendown()
- t.write("万\n事", font=("华文隶书", 20, "normal"))
- t.penup()
- t.goto(-130,0)
- t.pendown()
- t.write("如\n意", font=("华文隶书", 20, "normal"))
-
- t.done()
四、动态贺卡
效果图
源码如下
- import turtle as T
- import random
- import time
-
- t = T.Turtle()
-
- w = T.Screen()
- t.hideturtle()
- t.getscreen().tracer(5, 0)
- w.screensize(bg='maroon')
- t.left(90)
- t.up()
- t.forward(280)
- t.down()
- t.pensize(3)
-
- n=100
- t.color("orange","yellow")
- t.begin_fill()
- t.left(126)
-
- for i in range(5):
- t.forward(n/5)
- t.right(144)
- t.forward(n/5)
- t.left(71)
- t.end_fill()
- t.left(60)
- t.pensize(8)
- t.forward(60)
- t.right(20)
- t.right(116)
- t.pensize(6)
-
- t.color('dark green')
- n=130
-
- for i in range(6):
- time.sleep(0.5)
- a=1+i/2
- t.begin_fill()
- t.left(90)
- t.forward(n*a*0.707)
- t.left(135)
- t.forward(n*a)
- t.left(135)
- t.forward(n*a*0.707)
- t.end_fill()
- t.up()
- t.left(90)
- t.forward(n*a*0.707/3)
- t.left(135)
- t.forward(n*a/6)
- t.left(135)
- t.down()
-
- t.up()
- t.right(135)
- t.forward(30)
- t.right(90)
- t.forward(157)
- t.down()
- t.color('saddlebrown')
- t.begin_fill()
- t.forward(80)
- t.right(90)
- t.forward(45)
- t.right(90)
- t.forward(80)
- t.right(90)
- t.forward(45)
- t.end_fill()
-
- t.up()
- t.backward(45)
- t.right(90)
- t.backward(470)
- t.down()
-
- def light(l,t):
- t.pensize(3)
- colors = ["magenta","darkorange","red","blue"]
- for i in range(l):
- time.sleep(0.2)
- b = 70+16*i
- a = b/2*random.randint(-100,100)/100
- t.up()
- t.forward(b)
- t.left(90)
- t.forward(a)
- t.down()
- t.color("lightyellow",colors[i%4])
- t.begin_fill()
- t.circle(10)
- t.end_fill()
- t.up()
- t.backward(a)
- t.right(90)
- t.backward(b)
- t.down()
- t.pensize(1)
-
- def snow(m,t):
- for i in range(m):
- a = 400 - 800 * random.random()
- b = 600 - 800 * random.random()
- t.up()
- t.forward(b)
- t.left(90)
- t.forward(a)
- t.down()
- t.color('white')
- t.begin_fill()
- t.circle(1)
- t.end_fill()
- t.up()
- t.backward(a)
- t.right(90)
- t.backward(b)
-
- light(24,t)
- snow(600, t)
-
- t.goto(-200,200)
- my_word = ("Merry Christmas")
- t.write(my_word,font=("Edwardian Script ITC",40,"bold"))
- time.sleep(0.3)
- t.goto(-100,50)
- my_word = ("and")
- t.write(my_word,font=("Edwardian Script ITC",50,"bold"))
- time.sleep(0.3)
- t.goto(-150,-100)
- my_word = ("Happy New Year")
- t.write(my_word,font=("Edwardian Script ITC",40,"bold"))
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。