天天看點

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)
python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

今天玩點别的吧,都說Python除了生孩子,什麼都能幹。 咱們今天,就用Python寫個小遊戲,貪吃蛇!

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

想必大家都玩過這玩意,有沒有想過,你自己來實作一個這樣的遊戲呢,那麼接下來就是:學習Python的正确姿勢。 我們先來看一下整體思路,所有的遊戲最主要的内容都是程式的内循環,這才是保證一個遊戲能夠正常運作的前提。

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

廢話不多說,我們這就開始。 ❶ 調用第三方庫 Python與其他語言不一樣的地方,在于他有很多的第三方庫可以調用。在Python編寫遊戲時,pygame是一個很簡單上手的第三方庫,可以通過pip直接安裝。 這就是編寫貪吃蛇時我們需要調用的庫。

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

❷ 初始設定

接下來我們通過這幾行代碼來初始化pygame,定義視窗(邊界)的大小,視窗的标題和圖示。

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

❸ 定義顔色變量

由于我們需要用到一些顔色,而Python是不自帶的。是以我們需要定義幾個顔色。

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

❹ GameOver

之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

接下來介紹遊戲的主題部分,即貪吃蛇與蛇莓的顯示以及運動。

❺ 定義初始位置

我們将整個界面看成許多20*20的小方塊,每個方塊代表一個機關,蛇的長度就可以用幾個機關表示啦。這裡蛇的身體用清單的形式存儲,友善之後的删減。

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

❻ 鍵盤輸入判斷蛇的運動

我們需要通過鍵盤輸入的上下左右鍵或WASD來控制蛇類運動,同時加入按下Esc就退出遊戲的功能。

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

貪吃蛇運動有一個特點:不能反方向運動。是以我們需要加入限制條件。

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

接下來就是将蛇頭按照鍵盤的輸入進行轉彎操作,并将蛇頭目前的位置加入到蛇身的清單中。

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

❼ 判斷是否吃到樹莓

如果蛇頭與樹莓的方塊重合,則判定吃到樹莓,将樹莓數量清零;而沒吃到樹莓的話,蛇身就會跟着蛇頭運動,蛇身的最後一節将被踢出清單。

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

當樹莓數量為0時,重新生成樹莓,同時分數增加。

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

❽ 重新整理顯示層

每次蛇與樹莓的運動,都會進行重新整理顯示層的操作來顯示。有點類似于動畫的“幀”。

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

❾ 判斷是否死亡

當蛇頭超出邊界或者蛇頭與自己的蛇身重合時,蛇類死亡,調用GameOver。

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

❿ 控制遊戲速度

為了增加難度,我們設定蛇身越長速度越快,直到達到一個上限。

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

至此,Python編寫貪吃蛇小遊戲就全部完成啦。 今天就分享到這裡,代碼不難,當然更多的是提供下思路,你還可以進一步優化下代碼也可以添加一些功能,自己發揮吧。

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

那時候我們第一次接觸這樣的小遊戲的時候, 我們很是開心,簡簡單單,卻玩得不亦樂乎。 如今我們已經長大,早已對其不屑。不過,你剛剛,已經回憶了下那段時光,很溫暖,不是嗎?小孩子的快樂其實很簡單,成年人的簡單其實很快樂。

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

---------------------------------------------------------------------

 延伸閱讀 

北京大學出版社 

《Python資料分析與大資料處理從入門到精通》

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

Python資料分析聖經!

(1)全面:資料分析與大資料處理所需的所有技術,包含基礎理論、核心概念、實施流程,從程式設計語言準備、資料采集與清洗、資料分析與可視化,到大型資料的分布式存儲與分布式計算等。

(2)深入:一本書講透1種程式設計語言和14種資料分析與大處理工具,以及大資料分析技術及項目開發方法。

(3)豐富:包含45個“新手問答”、17個章節的“實訓”、3個項目綜合實戰、50道Python面試題精選。教你輕松玩轉資料分析與大資料處理。

python貪吃蛇_玩過貪吃蛇嗎?點這裡,教你用Python寫一個貪吃蛇小遊戲!❹ GameOver之前提到,所有遊戲最重要的部分是循環。而GameOver函數就是跳出這個循環的條件。這裡給出當蛇吃到自己身體或者碰到邊界時顯示的界面(判斷死亡的代碼會在之後展示)

 點選文末“