task1_1.py
1 from turtle import* 2 def move(x,y): 3 '''画笔移动到坐标(x,y)处''' 4 penup() 5 goto(x,y) 6 pendown() 7 8 def draw(n,size = 100): 9 '''绘制边长为size的正n边形''' 10 for i in range(n): 11 fd(size) 12 left(360/n) 13 14 def main(): 15 pensize(2) 16 pencolor('red') 17 18 19 move(-200,0) 20 draw(3) 21 22 move(0,0) 23 draw(4) 24 25 move(200,0) 26 draw(5) 27 28 hideturtle() 29 done() 30 31 main()

task1_2
1 from turtle import* 2 3 def moveto(x,y): 4 '''把画笔移动至坐标(x,y)处''' 5 penup() 6 goto(x,y) 7 pendown() 8 9 def main(): 10 pensize(2) 11 pencolor('blue') 12 13 moveto(-150,0) 14 circle(50) 15 16 moveto(0,0) 17 circle(50,steps = 4) 18 19 moveto(150,0) 20 circle(50,steps = 5) 21 22 moveto(300,0) 23 circle(50,steps = 6) 24 25 hideturtle() 26 done() 27 28 main()

task2.1py
1 from turtle import* 2 3 def moveto(x,y): 4 penup() 5 goto(x,y) 6 pendown() 7 8 def main(): 9 setup(800,600) 10 11 radius = 20 12 offset = 20 13 14 for i in range(9): 15 moveto(0,-radius) 16 circle(radius) 17 radius += offset 18 19 hideturtle() 20 done() 21 22 main()

task2_2.py
1 from turtle import* 2 from random import random 3 4 def moveto(x,y): 5 penup() 6 goto(x,y) 7 pendown() 8 9 def gen_color(): 10 return tuple((random() for i in range(3))) 11 12 def main(): 13 setup(800,600) 14 15 radius = 180 16 offset = 20 17 18 for i in range(8): 19 moveto(0,-radius) 20 color(gen_color()) 21 22 begin_fill() 23 circle(radius) 24 end_fill() 25 26 radius -= offset 27 28 hideturtle() 29 done() 30 31 main()

task3_1.py
1 from turtle import * 2 def square(size = 50, rgb = 'orange'): 3 '''绘制正方形 4 :para: size:int 指定边长 (如未指定参数,使用默认值) 5 :para: c: str 指定画笔颜色值 (如未指定参数,使用默认值) 6 ''' 7 pencolor(rgb) 8 for i in range(4): 9 fd(size) 10 left(90) 11 def main(): 12 setup(800, 600) 13 speed(0) 14 n = 9 15 for i in range(9): 16 square(80) 17 left(360/n) 18 hideturtle() 19 done() 20 main()

task3_2.py
1 from turtle import * 2 setup(800, 600) 3 pencolor('pink') 4 n = 4 5 speed(0) 6 for i in range(12): 7 # 绘制一片花瓣 8 for j in range(2): 9 circle(80,90) 10 left(180) 11 right(360/n) 12 left(30) 13 hideturtle() 14 done()
task4.py
1 from turtle import * 2 setup(800, 600) 3 bgcolor('black') 4 pencolor('white') 5 speed(0) 6 angle = 0 7 size = 2 8 n = 5 # 螺旋n边形 9 count = 50 # 循环次数 10 for i in range(count): 11 fd(size) 12 angle += 360/n 13 seth(angle) 14 15 size += 5 16 hideturtle() 17 done()

task5_1.py
1 from turtle import * 2 import math 3 def moveto(x,y): 4 penup() 5 goto(x,y) 6 pendown() 7 8 def draw(n,color,size=100): 9 fillcolor(color) 10 begin_fill() 11 12 angle=0 13 for i in range(n): 14 fd(size) 15 angle=360/n 16 left(angle) 17 end_fill() 18 19 20 setup(640,480,500,200) 21 pensize(2) 22 #bgcolor('black') 23 24 moveto(-100,-100) 25 draw(4,'black',size=200) 26 27 moveto(0,-100) 28 seth(45) 29 draw(4,'red',size=100*math.sqrt(2)) 30 hideturtle() 31 32 done()

task5_2.py
1 from turtle import * 2 pensize(2) 3 pencolor('blue') 4 for i in range(5): 5 fd(40+20*i) 6 left(90) 7 circle(40+20*i,90) 8 left(90) 9 fd(40+20*i) 10 left(90) 11 hideturtle() 12 done()

task6.py
1 from turtle import * 2 from random import random 3 def moveto(x, y): 4 5 penup() 6 goto(x, y) 7 pendown() 8 def gen_color(): 9 10 return tuple((random() for i in range(3))) 11 def rect(l,w): 12 t=gen_color() 13 pencolor(t) 14 pensize(0) 15 fillcolor(t) 16 begin_fill() 17 fd(l) 18 left(90) 19 fd(w) 20 left(90) 21 fd(l) 22 left(90) 23 fd(w) 24 left(90) 25 end_fill() 26 def main(): 27 setup(800, 600) 28 speed(0) 29 l=30 30 w=90 31 moveto(-l*10,0) 32 for i in range(1,21): 33 rect(l,w) 34 moveto(-l*(10-i),0) 35 hideturtle() 36 done() 37 38 main()
