站長資訊網
        最全最豐富的資訊網站

        用Python Tkinter實現剪刀石頭布小游戲

        python視頻教程欄目介紹使用Tkinter實現剪刀石頭布

        用Python Tkinter實現剪刀石頭布小游戲

        相關免費學習推薦:python視頻教程

        編寫剪刀石頭布游戲

        讓我們使用Python 3和Tkinter開發相同的游戲。我們可以將游戲命名為Rock-Paper-Scissors-Lizard-Spock

        規則和玩法

        Rock crushes Scissors

        Rock crushes Lizard

        Paper covers Rock

        Paper disproves Spock

        Scissors cuts Paper

        Scissors decapitates Lizard

        Lizard poisons Spock

        Lizard eats paper

        Spock smashes Scissors

        Spock vaporizes Rock

        Two same objects is a draw

        程序演練

        當用戶運行程序時,他們必須單擊五個可用對象之一:

        Rock

        Paper

        Scissors

        Lizard

        Spock

        用Python Tkinter實現剪刀石頭布小游戲

        如果大家在學習中遇到困難,想找一個python學習交流環境,可以加入我們的python圈,裙號930900780,可領取python學習資料,會節約很多時間,減少很多遇到的難題。

        當用戶選擇一個對象時,我們的程序將隨機選擇一個對象。然后,它將通過一組規則來聲明用戶是贏,輸還是畫游戲。結果將顯示在應用程序的第二行。

        當用戶按下任何按鈕時,游戲將重新開始。如果用戶想要關閉游戲,則可以按關閉按鈕。在游戲開始時,我們具有用于特定對象的手形符號。現在,當用戶選擇一個對象時,它將轉換為圖形圖像。我們的程序還選擇了一個對象,它將顯示所選對象的圖形圖像。

        用Python實現(10個步驟)

        現在我們已經有了剪刀石頭布游戲的意義,讓我們逐步介紹Python的過程。

        1.導入所需的庫

        #Import the required libraries : from tkinter import * import random import simpleaudio as sa
        • tkinter:在我們的應用程序中添加小部件

        • random:生成一個隨機數

        • simpleaudio:播放聲音文件

        2.創建tkinter主窗口

        root = Tk() root.configure(bg="#000000") root.geometry('+0+0') root.iconbitmap("Game.ico") root.title("Rock-Paper-Scissor-Lizard-Spock") root.resizable(width=False,height=False)
        • root = Tk( ):用于初始化我們的tkinter模塊。

        • root.configure( ):我們使用它來指定應用程序的背景色。在我們的情況下,背景顏色為黑色。

        • root.geometry( ):我們使用它來指定我們的應用程序窗口將在哪個位置打開。它將在左上角打開。

        • root.iconbitmap( ):我們使用它來設置應用程序窗口標題欄中的圖標。此功能僅接受.ico文件。

        • root.title( ):我們使用它來設置應用程序的標題。

        • root.resizable( ):在這里我們使用它來防止用戶調整主窗口的大小。

        3.導入聲音文件

        #To play sound files : start = sa.WaveObject.from_wave_file("Start.wav") Win = sa.WaveObject.from_wave_file("Win.wav") Lose = sa.WaveObject.from_wave_file("Lose.wav") Draw = sa.WaveObject.from_wave_file("Draw.wav") start.play()

        現在,我們將使用一些將在各種事件中播放的聲音文件。當我們的程序啟動時,它將播放開始文件。當用戶贏得游戲,輸掉游戲或繪制游戲時,我們將播放其他三個文件。

        需要注意的一件事是它僅接受.wav文件。首先,我們需要將聲音文件加載到對象中。然后我們可以.play( )在需要時使用方法播放它。

        用Python Tkinter實現剪刀石頭布小游戲

        4.為我們的應用程序加載圖像

        我們將在應用程序中使用各種圖像。要首先使用這些圖像,我們需要加載這些圖像。在這里,我們將使用PhotoImage類加載圖像。

        #Hand images : rockHandPhoto = PhotoImage(file="Rock_1.png") paperHandPhoto = PhotoImage(file="Paper_1.png") scissorHandPhoto = PhotoImage(file="Scissor_1.png") lizardHandPhoto = PhotoImage(file="Lizard_1.png") spockHandPhoto = PhotoImage(file="Spock_1.png") #Graphical images : rockPhoto = PhotoImage(file="Rock_P.png") paperPhoto = PhotoImage(file="Paper_P.png") scissorPhoto = PhotoImage(file="Scissor_P.png") lizardPhoto = PhotoImage(file="Lizard_P.png") spockPhoto = PhotoImage(file="Spock_P.png") #Decision image : decisionPhoto = PhotoImage(file="Decision_Final.png") #Result images : winPhoto = PhotoImage(file="G_WIN.png") losePhoto = PhotoImage(file="G_LOST.png") tiePhoto = PhotoImage(file="G_DRAW.png")

        首先,我們為物體準備了手部圖像。游戲開始時將向用戶顯示所有五個圖像。用戶必須從那些圖像中選擇一個對象。

        用戶單擊圖像后,我們的程序將向我們顯示該對象的圖形圖像。必須選擇一個對象,我們的程序也將選擇一個對象。我們的程序將僅顯示這兩個圖形圖像,然后其余圖像將消失。

        現在,我們顯示一個簡單的決策圖像,當結果可用時,它將更改其圖像。我們的結果有不同的圖像。

        如果用戶獲勝

        如果用戶輸了

        如果有平局

        5.添加Tkinter小部件

        #Initialize the button variables : rockHandButton = " " paperHandButton = " " scissorHandButton = " " lizardHandButton= " " spockHandButton = " " #Create the result button : resultButton = Button(root,image=decisionPhoto) #Set the variable to True click = True

        初始化五個按鈕的變量。

        在這里,我們創建了結果按鈕,它將向我們顯示最終結果。

        我們將click變量設置為True,以便我們的程序繼續運行直到將其設置為False。在接下來的幾點中,我們將看到

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 日韩精品无码AV成人观看| 国产成人精品日本亚洲专 | 国产精品伦一区二区三级视频 | 一本一本久久A久久综合精品 | 91精品观看91久久久久久| 精品久久人妻av中文字幕| 日韩精品一区二区三区不卡| 中文字幕亚洲精品| 国产成人无码精品一区二区三区| 中文成人无字幕乱码精品区 | 午夜DY888国产精品影院| 蜜臀精品无码AV在线播放| www夜片内射视频日韩精品成人| 华人在线精品免费观看| 国产成人精品午夜福利| 日韩精品少妇无码受不了| 亚洲欧美国产精品第1页| 久热精品人妻视频| 国内精品久久久久久久coent| 99免费精品国产| 在线观看日韩精品| 精品久久久久久久| 精品久久久久久国产| 久久99国产精品久久久| 91久久婷婷国产综合精品青草| 精品久久8x国产免费观看| 久久精品水蜜桃av综合天堂| 日产欧美国产日韩精品| 人人妻人人澡人人爽精品日本| 亚洲国产精品无码久久| 中文国产成人精品久久不卡 | 亚洲精品第一国产综合境外资源| 久久精品免费大片国产大片| 精品福利一区二区三区| 精品久久久久久久久久中文字幕| 精品少妇一区二区三区在线| 精品第一国产综合精品蜜芽| 国语自产精品视频在线观看| 免费视频精品一区二区| 中文字幕精品亚洲无线码一区应用| 亚洲精品国产美女久久久|