充分利用树莓派的python3
turtle的官方文档(turtle --- 海龟绘图 — Python 3.9.4 文档)上图
主要介绍移动和绘制上马
from turtle import *
position()
forward(50)
color('green')
fd(50) #fd() or forward()
up()
home()
down()
color('black')
back(50)
color('green')
bk(50) #bk() or backward() or back()
up()
home()
down()
right(90) #right() or tr()
color('black')
fd(50)
color('green')
forward(50)
up()
home()
down()
left(90) #left or lt()
color('black')
forward(50)
color('green')
forward(50)
up()
home()
down()
down()
sety(-100) #setx,sety(),setpos(x,y)
color('black')
circle(100,360)
#undo()
def red_c():
up()
circle(100,15)
down()
color('red')
circle(100,60)
up()
circle(100,15)
down()
for i in range(4):
red_c()
up()
home()
down()
dot('red')
def l(x):
left(x)
up()
forward(100)
down()
color('black')
backward(25)
up()
forward(25)
color('green')
down()
forward(25)
up()
home()
down()
v = [45,-45,135,-135]
for i in v:
l(i)
这是第一次的马运行效果就是这样如图(1-1)
这是优化后的马
from turtle import *
position()
def Len(d):
setheading(d)
down()
color('black')
forward(50)
color('green')
forward(50)
if(d == 0):
setheading(180) #seth() or setheading()
elif(d==180):
setheading(0)
else:
setheading(-1*d)
stamp()
"""
stamp()
clearstamp(stampid)
clearstamp(int)
"""
up()
home()
d = [0,90,180,-90]
for i in d:
Len(i)
down()
sety(-100)
color('black')
circle(100,360)
def red_c():
up()
circle(100,15)
down()
color('red')
circle(100,60) #circle(radius.extent,steps)
up()
circle(100,15)
down()
for i in range(4):
red_c()
up()
home()
dot('red')
def Len(x):
left(x)
up()
forward(100)
down()
color('black')
backward(25)
up()
forward(25)
color('green')
down()
forward(25)
up()
home()
v = [45,-45,135,-135]
for i in v:
Len(i)
放图(1-2)