△ 要点:
1 熟悉python的相关知识,锻炼自己的编程思维。
2 熟悉turtle的相关知识。
3 视觉享受。
△ 例子一:
1 静态图:
2 动态图:
3 代码:
import turtle as t
# 背景颜色
t.bgcolor('black')
# 颜色列表
c = ['red','blue', 'green', 'purple', 'yellow','white']
s = len(c) # 自定义:6,初始边长的长度
while True:
for i in range(0, 6):
t.pencolor(c[i]) # 画笔颜色
t.forward(s) # 向前步长
t.left(30) # 转角30°
s += 1
# 当边长达到100时,停止
if s==100:
t.done() # 绘画停止
t.ht() # 隐藏画笔
t.mainloop()
△ 例子二:
1 静态图:
2 动态图:
3 代码:
import turtle
import random
turtle.bgcolor('black')
turtle.colormode(255) # 可以兼顾数组颜色列表rgb
t = turtle.Pen()
t.pensize(5)
for i in range(10):
t.pencolor(random.randint(0,255),random.randint(0,255),random.randint(0,255))
t.circle(50) # 小圆,半径50
t.left(360/10)
for i in range(20):
t.pencolor(random.randint(0,255),random.randint(0,255),random.randint(0,255))
t.circle(100) # 大圆,半径100
t.left(360/20)
turtle.mainloop()
△ 例子三:
1 静态图:
2 动态图:
3 代码:
import turtle
import random
turtle.colormode(255) # 随机颜色,一般需要设置颜色模式为255
turtle.bgcolor('black')
zhizhu=turtle.Turtle()
zhizhu.speed(10)
zhizhu.pensize(6)
for i in range(100):
zhizhu.color(random.randint(0,255),random.randint(0,255),random.randint(0,255))
zhizhu.forward(150)
zhizhu.right(30)
zhizhu.forward(50)
zhizhu.left(60)
zhizhu.forward(70)
zhizhu.penup()
zhizhu.setposition(0,0)
zhizhu.pendown()
zhizhu.right(2)
turtle.done()
turtle.mainloop()
△ 例子四:
1 静态图:
2 动态图:
3 代码:
# 三角形画圆法
import turtle
import random
turtle.colormode(255)
turtle.bgcolor('black')
sjxcircle= turtle.Turtle()
sjxcircle.pensize(5)
for i in range(50):
sjxcircle.pencolor(random.randint(0,255),random.randint(0,255),random.randint(0,255))
sjxcircle.forward(300)
sjxcircle.left(123)
turtle.done()
turtle.ht()
turtle.mainloop()
△ 小结:
1 turtle的颜色设置,一般直接写英文即可,比如pencolor('red')画笔为红色。
2 看代码里面的注释:
import turtle as t
# 背景颜色
t.bgcolor('black')
# 声明一下,下面的颜色可采用序列数组(0,0,255)
t.colormode(255)
s = 6
while True:
for i in range(0, 6):
#t.pencolor('blue') # 画笔颜色:蓝色,不需要提前声明
# 这种RGB多用于多彩颜色的随机生成时
t.pencolor((0,0,255)) # 必须首先声明colormode(255),否则报错,不识别。
t.forward(s) # 向前步长
t.left(30) # 转角30°
s += 1
# 当边长达到100时,停止
if s==100:
t.done() # 绘画停止
t.ht() # 隐藏画笔
t.mainloop()