
用turtle模块制作的交互程序。每个计谋都有图文,还配了武士之歌。欣赏这个作品后,相信能让你激情飞扬!下面是部分代码预览:
"""
三十六计,用海龟画图模块制作的一个展现古代兵法谋略的Python作品。
单击每个计谋会显示它的图文说明,再单击说明又会显示36计总菜单。
武士之歌为背景音乐,气场浩荡,激情飞扬。
"""
from turtle import *
from random import randint
class Button(Turtle):
"""按钮类,每个按钮有三张图片,前两张是按钮的两个造型,第三张为计谋说明。"""
pass
def main():
"""主要函数"""
from winsound import PlaySound,SND_ASYNC,SND_LOOP
music = "Warrior Song.wav"
PlaySound(music,SND_ASYNC|SND_LOOP)
width,height = 960,720
screen = Screen()
screen.delay(0)
screen.setup(width,height)
screen.bgpic("背景1.png")
screen.title("Python三十六计展示 by lixingqiu")
plan36 = ['瞒天过海','围魏救赵','借刀杀人','以逸待劳',
'趁火打劫','声东击西','无中生有','暗渡陈仓',
'隔岸观火','笑里藏刀','李代桃僵','顺手牵羊',
'打草惊蛇','借尸还魂','调虎离山','欲擒故纵',
'抛砖引玉','擒贼擒王','釜底抽薪','混水摸鱼',
'金蝉脱壳','关门捉贼','远交近攻','假道伐虢',
'偷梁换柱','指桑骂槐','假痴不癫','上屋抽梯',
'树上开花','反客为主','美人计','空城计',
'反间计','苦肉计','连环计','走为上计']
width ,height = 240,48
positions = []
start_x = -360
start_y = 330
for i in range(9):
for j in range(4):
x = start_x + 240 * j
y = start_y - 56 * i
positions.append((x,y))
for plan,pos in zip(plan36,positions):
images = f"images/{plan}0.gif",f"images/{plan}1.gif"
image3 = f"images/{plan}说明.gif"
screen.addshape(image3)
[screen.addshape(im) for im in images]
Button(images,width,height,image3,pos)
screen.listen()
screen.mainloop()
if __name__ == "__main__":
main()
下载完整源代码与素材,请
需要浏览更多吗?
成为会员后,登陆才能继续浏览!联系微信scratch8即可办理会员。
(会员专属:能浏览所有文章,下载所有带链接的Python资源。)
