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

        用Python Tkinter實現(xiàn)剪刀石頭布小游戲

        python視頻教程欄目介紹使用Tkinter實現(xiàn)剪刀石頭布

        用Python Tkinter實現(xiàn)剪刀石頭布小游戲

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

        編寫剪刀石頭布游戲

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

        規(guī)則和玩法

        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實現(xiàn)剪刀石頭布小游戲

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

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

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

        用Python實現(xiàn)(10個步驟)

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

        1.導入所需的庫

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

        • random:生成一個隨機數(shù)

        • simpleaudio:播放聲音文件

        2.創(chuàng)建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()

        現(xiàn)在,我們將使用一些將在各種事件中播放的聲音文件。當我們的程序啟動時,它將播放開始文件。當用戶贏得游戲,輸?shù)粲螒蚧蚶L制游戲時,我們將播放其他三個文件。

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

        用Python Tkinter實現(xiàn)剪刀石頭布小游戲

        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")

        首先,我們?yōu)槲矬w準備了手部圖像。游戲開始時將向用戶顯示所有五個圖像。用戶必須從那些圖像中選擇一個對象。

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

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

        如果用戶獲勝

        如果用戶輸了

        如果有平局

        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

        初始化五個按鈕的變量。

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

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

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 91原创国产精品| 99久久国产主播综合精品| 九九精品免视看国产成人| 亚洲精品成人网站在线观看 | 久久99热这里只有精品国产| 精品久久久久久中文字幕| 国产成人精品综合久久久| 亚洲精品视频在线| 国产精品一二三区| 久久精品天天中文字幕人妻| 亚洲国产精品碰碰| 久久久精品波多野结衣| 国产精品美女久久久久AV福利| 国产精品久久国产精麻豆99网站| 国产在线精品无码二区| 欧美精品久久久久久久自慰| 区亚洲欧美一级久久精品亚洲精品成人网久久久久 | 国产精品一在线观看| 欧美精品久久久久久久自慰| 中文字幕日韩精品无码内射 | 精品国精品国产自在久国产应用男| 先锋影音国产精品| 久久精品国产久精国产| 久久青草国产精品一区| 国产亚洲精品观看91在线| 国产精品白浆在线观看免费| 精品久久无码中文字幕| 精品无码AV无码免费专区| 老汉精品免费AV在线播放| 亚洲国产精品无码专区| 亚洲无线观看国产精品| 无码人妻精品一区二区| 日韩av无码久久精品免费| 欧美jizzhd精品欧美| 亚洲AV日韩精品久久久久| 中文字幕久久精品无码| 亚洲AV永久青草无码精品| 日韩欧美国产精品第一页不卡| 国产亚洲精品看片在线观看| 国产精品成人啪精品视频免费| 国产精品成|