让我们使用Python的Tkinter库创建一个Rock Paper Scissors游戏(Stone Paper Scissors游戏)。我猜你已经知道游戏的意义了,因为它是世界上著名的游戏。
游戏规则
如果您不知道什么是剪刀石头布游戏,则该游戏具有三个选择:石头,布张和剪刀。两名玩家可以同时玩这个游戏。每个人都必须从三个可用选项中进行选择。
在我们制作的此应用中,您将与您的敌人(即计算机)竞争。游戏规则如下:
如果一个玩家选择石头,而另一个选择剪刀,则石头获胜。
如果一个玩家选择了石头,而另一个玩家选择了布,则布将获胜。
如果一个玩家选择剪刀,而另一个玩家选择布,则剪刀获胜。
如果两个选择都相同,那么没有人会赢。用户和计算机都不会获得分数。
现在,您知道规则以及如何玩游戏了。在没有任何进一步介绍的情况下,让我们直接开始编写游戏代码。
让我们写代码
首先,我们需要将两个库导入 tkinter 和 random。
importrandomimporttkinterastk
现在,让我们为游戏创建一个窗口,并将其命名为剪刀石头布游戏。
window= tk.Tk()window.geometry("400x300")window.title("Rock Paper Scissors Game")
接下来,我们将定义将在程序中使用的全局变量。 我们有四个用于存储用户的分数,计算机的分数,用户的选择和计算机的选择。 最初,我们将计算机的分数和用户的分数设置为零。
USER_SCORE =0COMP_SCORE =0USER_CHOICE =""COMP_CHOICE =""
然后,我们将定义两种方法来将用户的选择转换为数字,反之亦然。
defchoice_to_number(choice):
rps = {'rock':0,'paper':1,'scissor':2}returnrps[choice]defnumber_to_choice(number):
rps={0:'rock',1:'paper',2:'scissor'}returnrps[number]
现在,让我们创建一个函数来获取计算机的选择。我们在这里使用随机库。计算机从石头,布或剪刀中选择随机选择。
defrandom_computer_choice():returnrandom.choice(['rock','paper','scissor'])
接下来,我们将在代码中创建最重要的函数即结果函数,该函数确定获胜者。 此功能可评估用户和计算机的选择,并根据比较结果选择优胜者并更新得分。
另外,让我们创建一个文本区域,以显示用户和计算机的当前选择和当前分数。
>...
然后,我们将为三种不同的用户选择定义三种方法。这些方法采用用户的选择,生成计算机的随机选择,并将其传递到我们先前创建的结果函数中。
>...
现在,让我们构建三个按钮,以便用户可以单击它们来玩游戏。
>...
最后,让我们使用mainloop()方法在窗口中运行所有内容。
window.mainloop()
在以正确的顺序对以上所有代码进行编码后,请在您的IDLE或命令行上运行。
然后您将获得一个带有三个按钮的界面:``石头'',``布''和``剪刀''。然后,您可以单击这些按钮中的任何一个来启动游戏。
您需要单击一个按钮来选择您的选择。然后,计算机将自动选择自己的选择。
我们代码中的函数将比较这两种选择,然后给该回合的赢家一分。
让我们快速浏览一下为编写剪刀石头布游戏而编写的完整Python代码。
>...
当您运行代码时,游戏的图形用户界面(GUI)如下所示。