猫史档案馆


【Python作品分享】P29彩蛋演示【作业帖】

用户:好奇的铁奥UsFM好奇的铁奥UsFM查看:0 回复:2 评论:0 创建时间:2020-08-04T21:17:47


【作品展示】

center_image

 

【作品介绍】

汉诺塔

 

【作品源代码】

import turtle
import time
 
#移动画笔到指定位置
def Mov(p,x,y):
    p.up()
    p.goto(x,y)
    p.down()

#在指定位置放置盘子
def MovP(p,x,y,abc):
    p.clear()
    Mov(p,x,y)
    if (abc==1):
        p.forward(60)
    if(abc==2):
        p.forward(40)
    if(abc==3):
        p.forward(20)
    time.sleep(0.5)

#在画布上移动盘子
def mov():
    MovP(pc,90,-95,3)
    MovP(pb,-20,-95,2)
    MovP(pc,-10,-85,3)
    MovP(pa,70,-95,1)
    MovP(pc,-110,-95,3)
    MovP(pb,80,-85,2)
    MovP(pc,90,-75,3)

#绘制汉诺塔游戏背景图
def bg():
    Mov(p,-200,-100)
    p.forward(400)
    p.setheading(90)
    for i in range(3):
        Mov(p,(i-1)*100,-100)
        p.forward(200)
        p.write(chr(ord('A')+i), font = ('Arial',20,'normal'))
    p.hideturtle()
    MovP(pa,-130,-95,1)
    MovP(pb,-120,-85,2)
    MovP(pc,-110,-75,3)



#设置每只画笔的颜色和尺寸    
def setpen(p,s,i):
    p.pensize(s)
    p.pencolor(pcolor[i])

#主程序

pa=turtle.Pen()
pb=turtle.Pen()
pc=turtle.Pen()
p=turtle.Pen()

pcolor=['blue','red','orange','green']
setpen(p,5,0)
setpen(pa,10,1)
setpen(pb,10,2)
setpen(pc,10,3)
bg()
mov()
turtle.done()

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
活波的力士甲虫sNjn活波的力士甲虫sNjn

厉害

 

点赞0


评论


zrzrzrzr

改都没改

点赞0


评论