使用 Linkbot 學習 Python 3 / 簡介
您之前學習的 Python 3 高階課程旨在透過使用 Python 進行程式設計來提高您的知識和技能。本教程旨在讓您能夠透過程式設計使 Linkbot 機器人以非常特定的方式移動來與它們互動。透過看到 Linkbot 對您編寫的程式碼中的程式設計命令做出響應,您使用 Python 編碼的能力將激勵您學習更多。首先,您只需鍵入教程中顯示的程式碼,以檢視 Linkbot 的響應。然後,您將對該程式碼進行自己的更改,以玩轉 Linkbot 的能力。最糟糕的情況是程式無法正常工作,機器人沒有任何反應,所以請隨意玩轉程式碼。當您需要鍵入程式碼時,它將如下所示
##Python is easy to learn
print("Hello, World!")
這樣格式化的原因是為了使您需要鍵入的程式碼易於與其他文字區分開來。此外,程式碼將以不同的顏色顯示,不同的部分以不同的顏色顯示,以幫助您看到程式碼的不同部分。當您輸入程式碼時,它不一定會以顏色顯示,但只要您按照這裡寫的方式鍵入,它就無關緊要。
如果計算機打印出一些內容,它將如下所示
Hello, World!
(請注意,列印的文字會顯示在您的螢幕上,並且不涉及紙張。在計算機擁有螢幕之前,計算機程式的輸出會列印在紙上。)
請注意,這些 Python 高階課程是為 Python 3 設定的,這意味著大多數示例在 Python 2.7 及更早版本中將無法執行。此外,由其他程式設計師(如您)建立的一些額外課程可能尚未轉換為 Python 3。但是,一個版本的 Python 與另一個版本的 Python 之間的差異並不大,因此如果您學會了一個版本的編碼,您應該能夠閱讀為另一個版本編寫的程式,而不會遇到太多困難。在某些時候,您可能想看看針對 Python 2.6 的非程式設計師教程。
通常會混合您鍵入的文字(以**粗體**顯示)和程式在螢幕上列印的文字,這將如下所示
Halt! Who Goes there? Linkbot You may pass, Linkbot
這些課程將向您介紹程式設計的術語或詞彙。例如,程式設計通常也稱為**編碼**或**駭客**。透過學習程式設計的特殊詞彙,您將能夠理解程式設計師在說什麼,並且聽起來像一名程式設計師。
最後,對於您成功完成這些課程來說,擁有 Python 3 軟體非常重要。如果您還沒有 Python 軟體,請訪問 https://python.club.tw/download/ 並獲取適合您計算機平臺的 Python 3 版本。如果您在課堂上學習,您的老師很可能已經為您完成了此操作。如果沒有,請下載它,閱讀說明,並安裝程式。
對於 Python 程式設計,您需要一個有效的 Python 安裝和一個文字編輯器。Python 自帶一個編輯器 *IDLE*,它非常棒,足以滿足初學者的需求。隨著您進一步學習程式設計,您可能會切換到其他編輯器,如 *emacs*、*vi* 或其他編輯器。
Python 下載頁面為:https://python.club.tw/download。最新版本是 Python 3.4.2(截至 2014 年 10 月 18 日);**Python 2.7 及更早版本將無法使用本教程**。下載站點上提供了適用於不同計算機平臺的不同安裝檔案。以下是一些針對最常見作業系統的具體說明
要安裝執行本課程所需的一切,包括 Python 3、Python 3 設定工具和 Barobo Python 包,請確保您已連線到網際網路,並在終端視窗中執行以下命令
sudo apt-get install python3 python3-setuptools python3-numpy idle3 sudo easy_install3 pybarobo
您還需要將您的使用者帳戶新增到“dialout”組。您可以使用以下命令執行此操作
sudo usermod -a -G dialout $USER
上面的命令將把您登入的任何使用者新增到“dialout”組。如果您想新增一個未登入的使用者帳戶,請將“$USER”替換為另一個帳戶的使用者名稱。您可能需要登出並重新登入才能使更改生效。
對於其他 Linux 發行版,請按照您的發行版或 Python 網站上提供的說明獲取 Python 3、NumPy 和 PyBarobo 安裝。
Raspbian 預設情況下安裝了 Python 3 和 numpy。要使您的樹莓派準備好控制 Linkbot,請確保您的樹莓派已連線到網際網路,並鍵入以下命令
sudo usermod -a -G dialout $USER sudo apt-get install python3-setuptools sudo easy_install3 pybarobo
您可能需要登出並重新登入才能使更改生效。
從 Mac OS X (Tiger) 開始,Python 預設情況下隨作業系統一起提供,但您需要更新到 Python 3,直到 OS X 開始包含 Python 3(透過啟動以下命令檢查版本)python3在命令列終端中)。標準安裝中可能還缺少 IDLE(Python 編輯器)。如果您想(重新)安裝 Python,請從 Python 下載站點 獲取 MacOS 安裝程式。
下載適用於 Windows 的安裝程式(如果您沒有 64 位 AMD 或 Intel 晶片,則為 x86 MSI 安裝程式)。即使您有 64 位晶片,我仍然建議您下載 32 位版本,因為預設情況下,一些 Barobo Linkbot 庫是為 32 位系統預先構建的。雙擊安裝程式啟動安裝,然後按照提示操作。請務必包含可選的“pip”軟體包,它對於安裝額外的 Python 模組和附加元件非常有用。
注意! 最新的 Python 3.4.2 安裝程式可以幫助您設定路徑。如果您在 Windows 上安裝 Python 3.4.2,請選擇為所有使用者安裝。將有一個名為自定義 Python 3.4.2 的安裝步驟。在此步驟中,如果您向下滾動到可定製選項的最後一個條目,您將看到一個名為將 python.exe 新增到路徑 的選項。預設情況下,此設定設定為整個功能將不可用。將安裝設定更改為將在本地硬碟驅動器上安裝 以將 Python 自動新增到您的路徑中。完成後,您將不再需要遵循標題為“配置您的 PATH 環境變數”的下一節中的說明。 |
接下來,您需要安裝一個驅動程式,該驅動程式可在此處獲得:安裝程式。按照連結,下載檔案並執行它。安裝 Python 並配置路徑後,開啟 Windows 命令提示符並輸入以下命令
pip install pybarobo
有關更多資訊,請參閱 https://docs.python.club.tw/3/using/windows.html#installing-python。
配置您的 PATH 環境變數
[edit | edit source]PATH 環境變數是資料夾的列表,這些資料夾用分號隔開,Windows 在您嘗試透過在命令提示符中鍵入其名稱來執行程式時會在其中查詢程式。您可以透過在命令提示符中鍵入以下命令來檢視 PATH 的當前值
echo %PATH%
永久更改環境變數的最簡單方法是在 Windows 中調出內建的環境變數編輯器。在不同的 Windows 版本中,訪問此編輯器的方式略有不同。
在 Windows 8 上:按 Windows 鍵並鍵入控制面板以找到 Windows 控制面板。開啟控制面板後,選擇檢視方式:大圖示,然後單擊系統。在彈出的視窗中,單擊高階系統設定連結,然後單擊環境變數...按鈕。
在 Windows 7 或 Vista 上:單擊螢幕左下角的開始按鈕,將滑鼠懸停在計算機上,右鍵單擊並選擇屬性從彈出選單中。單擊高階系統設定連結,然後單擊環境變數...按鈕。
在 Windows XP 上:右鍵單擊桌面的我的電腦圖示並選擇屬性。選擇高階選項卡,然後單擊環境變數...按鈕。
調出環境變數編輯器後,無論您執行的是哪個版本的 Windows,您都將執行相同的操作。在系統變數中,在編輯器的下半部分,找到一個名為PATH的變數。如果存在,請選擇它並單擊編輯...。假設您的 Python 根目錄是 C:\Python34,請將這兩個資料夾新增到您的路徑中(並確保您正確使用分號;列表中的每個資料夾之間應該有一個分號)
C:\Python34 C:\Python34\Scripts
注意:如果您想雙擊並從 Windows 資料夾啟動 Python 程式,並且不希望控制檯視窗消失,您可以在每個指令碼的底部新增以下程式碼
print("Hello World")
#stops console from exiting
end_prog = ""
while end_prog != "q":
end_prog = input("type q to quit")
互動模式
[edit | edit source]進入 IDLE(也稱為 Python GUI)。您應該會看到一個視窗,其中包含類似於以下內容的文字
Python 3.0 (r30:67503, Dec 29 2008, 21:31:07)
[GCC 4.3.2 20081105 (Red Hat 4.3.2-7)] on linux2
Type "copyright", "credits" or "license()" for more information.
****************************************************************
Personal firewall software may warn about the connection IDLE
makes to its subprocess using this computer's internal loopback
interface. This connection is not visible on any external
interface and no data is sent to or received from the Internet.
****************************************************************
IDLE 3.0
>>>
>>> 是 Python 的一種方式,它告訴您您處於互動模式。在互動模式下,您鍵入的內容會立即執行。嘗試輸入1+1。Python 將響應2。互動模式允許您測試和檢視 Python 將執行的操作。如果您覺得需要使用新的 Python 語句,請進入互動模式並嘗試使用它們。
建立和執行程式
[edit | edit source]如果您還沒有進入 IDLE,請進入 IDLE。在頂部的選單中,選擇檔案,然後選擇新視窗。在出現的視窗中,輸入以下內容
print("Hello, World!")
現在儲存程式:從選單中選擇檔案,然後選擇儲存。將它儲存為“hello.py”(您可以將它儲存到任何您想要的資料夾中)。現在它已儲存,可以運行了。這裡只是新手需要注意的一點,如果您更改了程式,請使用版本符號儲存它,例如helloV1.py,這樣您就不會更改有效的原始程式。
接下來,透過轉到執行,然後選擇執行模組 來執行程式(或者如果您使用的是舊版本的 IDLE,請使用編輯,然後選擇執行指令碼)。這將在*Python Shell* 視窗中輸出Hello, World!。
有關 IDLE 的更深入介紹,可以在 http://hkn.eecs.berkeley.edu/~dyoo/python/idle_intro/index.html 找到一個帶有螢幕截圖的更長的教程。
程式檔名
[edit | edit source]堅持一些關於 Python 程式檔名的規則非常有用。否則,某些事情可能會意外出錯。這些對於程式來說並不重要,但是如果您不遵循它們來命名模組(模組將在後面討論),那麼您可能會遇到奇怪的問題。
- 始終使用副檔名儲存程式.py。不要在檔名中其他任何地方使用句點。
- 僅對檔名使用標準字元:字母、數字、連字元(-)和下劃線(_).
- 空格(“ ”)根本不應該使用(使用下劃線代替)。
- 在檔名開頭不要使用除字母以外的任何字元(尤其是數字!)。
- 不要使用“非英語”字元(例如ä, ö, ü, å或ß)在您的檔名中 - 或者,更確切地說,在程式設計時不要使用它們。
從命令列使用 Python
[edit | edit source]如果您不想從命令列使用 Python,則不必使用,只需使用 IDLE 即可。要進入互動模式,只需鍵入python3 而不帶任何引數。要執行程式,請使用文字編輯器(Emacs 具有良好的 Python 模式)建立它,然後使用python3 program_name 執行它。
此外,要在 Vim 中使用 Python,您可能需要訪問 Python wiki page about VIM
在 *nix 中執行 Python 程式
[edit | edit source]如果您使用的是 Unix(如 Linux、Mac OS X 或 BSD),如果您使用 chmod 使程式可執行,並將第一行設為
#!/usr/bin/env python3
您可以像其他任何命令一樣使用./hello.py 執行 Python 程式。
在哪裡獲得幫助
[edit | edit source]在您的 Python 生涯中的某個時刻,您可能會卡住,並且不知道如何解決您應該處理的問題。本教程只涵蓋了 Python 程式設計的基礎知識,但還有許多其他資訊可用。
Python 文件
[edit | edit source]首先,Python 有很好的文件。您的計算機上甚至可能存在這些文件的副本,這些副本隨您的 Python 安裝一起提供。
- Guido van Rossum 編寫的官方 Python 3 教程 通常是解決一般問題的良好起點。
- 對於有關標準模組(您將在後面瞭解什麼是標準模組)的問題,Python 3 庫參考 是檢視的地方。
- 如果您真的想了解語言的細節,Python 3 參考手冊 是全面的,但對於初學者來說相當複雜。
Python 使用者社群
[edit | edit source]還有許多其他 Python 使用者,他們通常都很友好,並且願意幫助您。在向 Python 使用者社群提問之前,每個人都會感謝您在聯絡社群之前在網上搜索問題的解決方案。這個非常活躍的使用者社群主要透過郵件列表和新聞組進行組織。
- tutor 郵件列表 適用於希望就如何使用 Python 語言學習計算機程式設計提出問題的人。
- python-help 郵件列表 是 python.org 的幫助臺。您可以向一群知識淵博的志願者詢問您所有 Python 問題。
- Python 新聞組 comp.lang.python (Google groups 檔案)是 Python 通用討論、問題和社群中心會議點。
- Python 維基有一個 本地使用者組列表,您可以加入該組郵件列表並提出問題。您也可以參加使用者組會議。