Making Games with Python & Pygame 中文翻譯

bigbigli發表於2020-12-08

Making Games with Python & Pygame 用Pygame做遊戲

第1章-安裝python和pygame

原文作者:Al Sweigart
翻譯:bigbigli/李超
禁止轉載

在開始做遊戲之前你應該知道什麼?

在閱讀這本書之前,如果你對Python程式設計有一點了解(或者如何使用Python之外的另一種語言程式設計),這可能會有所幫助;然而,即使你還沒有讀過這本書,你仍然可以讀這本書。

程式設計並不像人們想象的那麼難。

如果你遇到了一些麻煩,你可以在http://inventwithpython.com上免費閱讀這本書——《Invent Your Own Computer Games with
Python》,或者在http://inventwithpython.com/wiki上查詢一個相關的問題。

在閱讀這本書之前,如果沒有了解過Pygame庫也沒關係,下一章是關於Pygame的所有主要特性和功能的簡短教程。

如果您還沒有閱讀過關於Python及pygame任何內容,也沒有安裝過Python及Pygame,那麼稍後我將詳細介紹如何安裝。如果您已經安裝了這兩個,那麼您可以跳過本章。

下載並安裝Python

在我們開始程式設計之前,您需要在計算機上安裝Python直譯器。直譯器是一個程式,它理解您將用Python編寫的說明。沒有直譯器,您的計算機將無法執行Python程式。 從現在開始,我們將把Python直譯器稱為Python。

Python直譯器可以從Python程式語言的官方網站下載,http://www.python.org。 您可能需要其他人的幫助來下載和安裝Python軟體。安裝什麼樣的Python直譯器取決於您的計算機的作業系統是Windows、MacOSX還是Linux作業系統,如Ubuntu。你還可以在網上找到在電腦上安裝Python軟體的視訊http://invpy.com/installing

Windows系統安裝python

當您訪問http://python.org時,您應該看到左邊的連結列表(例如-about、-News、-Documentation、-Download等等)。點選Download連結進入下載頁面,然後查詢名為Python3.2Windows安裝程式的檔案,然後單擊其連結下載Windows系統的Python。

雙擊剛剛下載的python-3.2.msi檔案,啟動Python安裝程式。(如果沒有啟動,請嘗試右鍵單擊檔案並選擇Install。) 一旦安裝程式啟動,只需繼續單擊Next按鈕,並接受在開始時安裝程式的選擇(不需要進行任何更改)。安裝完成後,單擊Finish。

Mac OS X系統

Mac OS X10.5附帶Python2.5.1由蘋果預裝。目前,Pygame只支援Python2,而不支援Python3(現在2020年已經支援)。然而,本書中的程式同時使用Python2和Python3。

Python網站(http://docs.python.org/dev/using/mac.html)還有一些關於在Mac上使用Python的其他資訊。

啟動Python

我們將使用IDLE軟體鍵入我們的程式並執行它們。IDLE代表互動式開發環境。開發環境是使編寫Python程式變得容易的軟體,就像文書處理器軟體使編寫書籍變得容易一樣。

如果您的作業系統是WindowsXP,您可以通過單擊“開始”按鈕來執行Python,然後選擇Program - Python3.1 - IDLE(Python GUI)。對於Windows Vista或Windows7,只需單擊左下角的Windows按鈕,找到IDLE或者搜尋IDLE並選擇就可以了。

如果您的作業系統是Max OS X,則通過開啟Finder視窗並單擊Applications啟動IDLE,然後單擊Python3.2,然後單擊IDLE圖示就可以了。

安裝Pygame

安裝完Python後,並沒有自帶Pygame庫。像Python一樣,Pygame是免費的。您也需要下載和安裝Pygame,這與下載和安裝Python直譯器一樣容易。在瀏覽器中,轉到http://pygame.org,然後單擊網站左側的Downloads下載連結。您需要下載作業系統的Pygame安裝程式和您安裝的Python版本,本書假設您下載的是Windows版本。

在Windows上,雙擊下載的檔案安裝Pygame。 若要檢查Pygame是否安裝正確,請在互動式shell中鍵入以下內容:

import pygame

如果點選Enter鍵後沒有出現任何東西,那麼您就知道Pygame已經成功安裝了。如果出現錯誤匯入錯誤:沒有出現名為pygame的模組,則嘗試再次安裝Pygame(並確保輸入的pygame正確)。

本章有五個小程式,演示如何使用Pygame提供的不同功能。在最後一章中,您將使用這些特性來完成用Python編寫的帶有Pygame的完整遊戲。

關於如何安裝Pygame的視訊教程可在本書的網站http://invpy.com/videos查閱。

如何使用這本書

使用Python&Pygame製作遊戲不同於其他程式設計書,因為它專注於幾個遊戲程式的完整原始碼。這本書沒有教你程式設計概念,而是讓你自己去弄清楚如何用這些概念製作程式,這裡向你展示了一些程式,然後解釋了它們是如何組合在一起的。

一般來說,你應該按順序閱讀這些章節。在這些遊戲中有許多概念被反覆使用,它們只在它們出現的第一個遊戲中被詳細解釋。但如果有一個你認為有趣的遊戲,直接跳到那一章先閱覽,如果你感覺自己能掌握,則可以隨時閱讀。

特色程式

每一章都是一個單一的遊戲程式,並解釋不同部分的程式碼是如何工作的。通過從本書中逐行輸入程式碼是非常有幫助的,但是,您也可以從本書的網站下載原始碼檔案。 在Web瀏覽器中,轉到URL http://invpy.com/source並按照說明下載原始碼檔案。但是自己輸入程式碼確實可以幫助你更好地學習程式碼。

下載圖形和聲音檔案

雖然你可以輸入你從這本書中讀到的程式碼,但你需要從http://invpy.com/downloads下載這本書中游戲使用的圖形和聲音檔案,確保這些影像和聲音檔案位於與.py Python檔案相同的資料夾中,否則Python程式將無法找到這些檔案。

行數和空間

自己輸入原始碼時,不要輸入每一行開頭出現的行號。例如,如果你在書中看到這個:

您不需要在左側輸入1,2,3,4... ...

應該這樣輸入:

number = random.randint(1, 20)
spam = 42
print('Hello world!')

這些數字只用於本書可以參考程式碼中的特定行,它們不是實際程式的一部分。

除了行號之外,請確保輸入的程式碼與顯示的完全一樣。請注意,有些行不是從頁面最左邊開始的,而是由四個或八個或更多空格縮排的。一定要在每一行的開頭加上正確的空格數。(由於IDLE中的每個字元都是相同的寬度,所以您可以通過計算正在檢視的行上方或下方的字元數來計算空格數。)

例如,在下面的程式碼中,您可以看到第二行被四個空格縮排,因為上面一行的四個字元(while)位於縮排空間之上。第三行由另四個空格縮排(四個字元,如果n在第三行縮排空間之上):

while spam < 10:
if number == 42:
print('Hello')

這本書的文字包裝

有些程式碼行太長,不適合在本書的頁面上的一行,程式碼的文字將繞到下一行。當您在檔案編輯器中輸入這些行時,在一行中輸入程式碼,而不按Enter鍵。

您可以通過檢視程式碼左側的行號來判斷新行何時開始。例如,下面的程式碼只有兩行程式碼,儘管第一行繞到了下一行:

線上檢視您的程式碼

這本書中的一些程式有點長。雖然通過輸入這些程式的原始碼來學習Python是非常有幫助的,但您可能會意外地輸入導致程式崩潰的錯誤。錯誤在哪裡可能不明顯。

您可以將原始碼的文字複製並貼上到圖書網站上的線上diff工具中。diff工具將顯示書中的原始碼和您鍵入的原始碼之間的任何差異。這是在程式中查詢任何錯誤的簡單方法。

複製和貼上文字是一種非常有用的計算機技能,特別是對於計算機程式設計。在http://invpy.com/copypaste這本書的網站上有一個關於複製和貼上的視訊教程。

相關文章