python用turtle画七巧板_python之“七巧板”

from turtle import *len=200坐标=[]defwritestr(a):

write(a, False,"left", ("Arial", 10, "normal"))def平行四边形(x,y):

坐标.clear()

penup()

goto(x,y)

writestr(1)

坐标.append([xcor(),ycor()])

pendown()

begin_fill()

forward(len/2)

writestr(2)

坐标.append([xcor(),ycor()])

right(45)

forward(len/2*1.414/2)

writestr(3)

坐标.append([xcor(),ycor()])

right(135)

forward(len/2)

writestr(4)

坐标.append([xcor(),ycor()])

right(45)

forward(len/2*1.414/2)

right(135)

end_fill()def正方形(x,y):

begin_fill()

坐标.clear()

penup()

goto(x, y)

writestr(1)

坐标.append([xcor(), ycor()])

pendown()

forward(len/2/1.414)

writestr(2)

坐标.append([xcor(), ycor()])

left(90)

forward(len/2/1.414)

writestr(3)

坐标.append([xcor(), ycor()])

left(90)

forward(len/2/1.414)

writestr(4)

坐标.append([xcor(), ycor()])

left(90)

forward(len/2/1.414)

end_fill()def大三角形(x,y):

begin_fill()

坐标.clear()

penup()

goto(x, y)

writestr(1)

坐标.append([xcor(), ycor()])

pendown()

forward(len/1.414)

writestr(2)

坐标.append([xcor(), ycor()])

left(135)

forward(len)

writestr(3)

坐标.append([xcor(), ycor()])

left(135)

forward(len/1.414)

left(90)

end_fill()def中三角形(x,y):

begin_fill()

坐标.clear()

penup()

goto(x, y)

writestr(1)

坐标.append([xcor(), ycor()])

pendown()

forward(len/2)

writestr(2)

坐标.append([xcor(), ycor()])

left(135)

forward(len/2*1.414)

writestr(3)

坐标.append([xcor(), ycor()])

left(135)

forward(len/2)

left(90)

end_fill()def小三角形(x,y):

begin_fill()

坐标.clear()

penup()

goto(x, y)

writestr(1)

坐标.append([xcor(), ycor()])

pendown()

forward(len/2/1.414)

writestr(2)

坐标.append([xcor(), ycor()])

left(135)

forward(len/2)

writestr(3)

坐标.append([xcor(), ycor()])

left(135)

forward(len/2/1.414)

left(90)

end_fill()

color("blue")

平行四边形(-100,-100)

color("red")

setheading(-45)

正方形(坐标[1][0],坐标[1][1])

color("orange")

setheading(-45)

大三角形(坐标[3][0],坐标[3][1])

紫色x=坐标[1][0]-abs(坐标[1][0]-坐标[0][0])*1/4紫色y=坐标[1][1]+abs(坐标[0][1]-坐标[1][1])*1/4-len/2color("yellow")

setheading(-90)

大三角形(坐标[2][0],坐标[2][1])

绿色x=坐标[2][0]-abs(坐标[2][0]-坐标[0][0])*1/4绿色y=坐标[0][1]

棕色x=(坐标[1][0]+坐标[2][0])/2棕色y=(坐标[1][1]+坐标[2][1])/2color("purple")

setheading(0)

中三角形(紫色x,紫色y)

color("green")

setheading(0)

小三角形(绿色x,绿色y)

color("brown")

setheading(-45)

小三角形(棕色x,棕色y)

mainloop()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值