跳轉到內容

維基少年:樹莓派/Python入門

來自華夏公益教科書

Python 是一種通用程式語言,易於學習,並且在這本華夏公益教科書中幾乎所有的教程中都有使用。

從樹莓派作業系統上的程式設計選單中開啟 IDLE。

樹莓派作業系統上預安裝了 Python 3 和 IDLE。 IDLE 可以從程式設計選單中開啟。

如果您沒有樹莓派,可以在幾乎所有計算機上從 官方網站 安裝 Python 3 的副本。

使用 IDLE Shell

[編輯 | 編輯原始碼]

IDLE(整合開發和學習環境)包含在 Python 3 中,易於使用。它是一個整合開發環境 (IDE),它是一種旨在簡化和方便編寫原始碼的軟體型別。

開啟的第一個視窗是 IDLE Shell,它是 Python 3 Shell。您可以在 Shell 中執行一條簡短的 Python 程式碼,例如 Python 是一個計算器,所以讓我們嘗試新增 2 + 2

Python 3.10.4 (tags/v3.10.4:9d38120, Mar 23 2022, 23:13:41) [MSC v.1929 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>>2+2
4

隨意使用 Python 的計算器並嘗試使用不同的運算子

  • 加號 +,例如 1 + 1
  • 減號 -,例如 3 - 2
  • 乘號 *,例如 6 * 2
  • 除號 /,例如 10 / 2
  • 平方 ** 2,例如 2 ** 2
  • 模運算子(給出除法的餘數) %,例如 10 % 3

您也可以透過在 終端程式中鍵入 python3 並按下 ↵ Enter 鍵來訪問 Python 3 Shell。

你好,世界

[編輯 | 編輯原始碼]

每當程式設計師開始使用一門新的程式語言時。首先要做的事情是輸出短語“你好,世界”。

開啟 IDLE,選擇檔案,然後新建檔案 (Ctrl+N)(或同時按下 CtrlN 鍵),建立一個新檔案並將其命名為 helloworld.py,然後鍵入以下內容

print("Hello World")

透過選擇執行,然後執行模組 (F5)(或按下 F5 鍵)在 IDLE 中執行程式碼,它應該在 Python Shell 中顯示為

Hello World

print 是一個內建函式,它將文字輸出到螢幕上。由於它是一個 Python 已經定義好用於執行某些操作的單詞,所以程式設計師稱之為“關鍵字”。

有時您可能需要在程式碼中添加註釋或刪除一行程式碼來排除故障(這稱為除錯)。

在 Python 中,您可以使用井號 #(在美國,這令人困惑地被稱為“磅號”)添加註釋。讓我們在之前的“你好,世界”程式中新增一個註釋

print("Hello World") # Let's say Hello World!

一旦鍵入井號,Python 直譯器將忽略該行的其餘部分,這使我們能夠添加註釋。

變數就像一個水桶,它可以裝載一個值。

變數是用來儲存我們在程式中定義的值的容器。

在 Python 中,變數使用名稱、變數賦值運算子 = 和值進行賦值。以下是值的示例

布林值

[編輯 | 編輯原始碼]

真或假,例如 TrueFalse

x = True  # x is a Boolean with a value of True
y = False  # y is a Boolean with a value of False

正數或負數,例如 5-10

x = 5  # x is an integer with a value of 5
y = -10  # y is an integer with a value of -10

浮點數

[編輯 | 編輯原始碼]

使用小數點的正數或負數,例如3.14-0.5

x = 3.14  # x is a floating-point number with a value of 3.14
y = -0.5  # y is a floating-point number with a value of -0.5

一系列字母、數字或符號,例如"Hello World"。在 Python 中,可以使用單引號' '或雙引號" "來定義字串。

x = "Hello World"  # x is a string with a value of "Hello World"
y = 'This is a string'  # y is a string with a value of 'This is a string'

列表是有序的值集合,每個值之間用逗號,分隔,可以是上面提到的任何型別的值。可以使用任何 Python 3 資料型別。

fruits = ["apple", "banana", "mango"] # fruits is a list with the values: apple, banana, mango
numbers = ["1", "2", "3", "4"] # numbers is a list with the values: 1, 2, 3, 4

Python 3 有內建函式可以修改列表。例如,嘗試將兩個列表合併在一起

fruits = ["apple", "banana", "mango"]
numbers = ["1", "2", "3", "4"]

fruits.extend(numbers)
print(fruits)
["apple", "banana", "mango", "1", "2", "3", "4"]

字典類似於列表,但每個條目有兩個值。以下是一個例子

capitals = {
    "United States": "Washington, D.C.",
    "France": "Paris",
    "Japan": "Tokyo",
    "Brazil": "Brasília"
}
# To print out a country's capital, do this
print(capitals["Japan"])

# To add a new value to the dictionary, do this:
capitals["Australia"] = "Canberra"

其他資料型別

[編輯 | 編輯原始碼]

這些只是 Python 中可用變數型別的一些示例。還有許多其他型別,包括複數、元組、集合等等。

if 語句

[編輯 | 編輯原始碼]
if語句就像道路上的分岔路口。

if語句用於在滿足特定條件的情況下執行部分原始碼。例如,建立一個名為“x”的變數並將其設定為 5。

關鍵字else用於定義在x == 5條件不滿足時原始碼應該執行的操作。

#Create the variable "x" and set it to 5.
x = 5

# This if statement checks if a variable "x" is equal to 5
if x == 5:
    # If the condition is true, this block of code will be executed
    print("x is equal to 5")
    
else:
    # If the condition is false, this block of code will be executed
    print("x is not equal to 5")
x is equal to 5

如果語句有多個條件怎麼辦?我們使用關鍵字elif(意思是“else if”)。在下面的例子中,我們使用小於<和大於>符號來確定一個數字是正數、負數還是零。

嘗試在 IDLE 中執行此示例並將x的值更改為獲取所有 3 個輸出

x = input("What is the value of x?")

# This if statement checks the value of a variable "x"
if x < 0:
    # If "x" is less than 0, this block of code will be executed
    print("x is negative")
    
elif x == 0:
    # If "x" is equal to 0, this block of code will be executed
    print("x is zero")
    
elif x > 0:
    # If "x" is greater than 0, this block of code will be executed
    print("x is positive")

有時你希望程式碼重複,可以使用迴圈來完成。Python 中有兩種迴圈

For 迴圈

[編輯 | 編輯原始碼]

For 迴圈在你知道程式碼需要重複多少次時很有用。

在此示例中,有一個包含 1 到 5 的數字列表。方括號[]用作列表,因為列表是一種用於儲存多個值的特定變數資料型別。

# This for loop will iterate through a list of numbers
for number in [1, 2, 3, 4, 5]:
    # Each time through the loop, the value of "number" will be updated
    # to the next value in the list
    print(number)
1
2
3
4
5

While 迴圈

[編輯 | 編輯原始碼]

While 迴圈會無休止地重複,直到條件滿足。例如,列印 1 到 10 的數字

i = 0

# Start a while loop that will continue as long as "i" is less than 10
while i < 10:
  # Increment "i" by 1 each time through the loop
  i += 1

  # Print the value of "i"
  print(i)
1
2
3
4
5
6
7
8
9
10

模組是由其他軟體開發人員編寫的 Python 原始碼。預設情況下,Python 不能做太多事情,但我們可以透過匯入模組使我們的 Python 程式做更多的事情。

可以使用import關鍵字新增模組。如果只想從該模組中執行一項操作,請使用from來更具體一些。

例如,列印圓周率 Pi。圓周率通常簡化為3.14,但實際上它在現實生活中會無限地繼續下去(數學家稱之為無理數)。在 Python 中,pi會將圓周率列印到小數點後 15 位。

from math import pi

print(pi)
3.141592653589793
藍線是半徑,黑線是圓周。

現在我們有了圓周率,可以建立一個簡單的程式來計算圓的面積。公式如下:面積 = 圓周率 × 半徑2

  • 圓周 – 圓的外圍線
  • 半徑 – 連線圓心到圓周的直線

單星號*用於將一個數字乘以另一個數字(就像乘號×一樣)。雙星號**2用於對數字進行平方,例如:22 = 4

from math import pi

r = input("Enter the radius of the circle:")
area = pi * r ** 2

print("The area of the circle is:" + area)

如果你想更進一步,可以嘗試找到圓的周長。公式如下:周長 = 圓周率 × 直徑

  • 直徑 – 穿過圓心,從圓周的一側到另一側的直線。這條線是半徑的兩倍長。
  • 圓周率 – 圓周長度與直徑之比。這意味著每個圓的圓周大約是直徑的 3.14 倍。它以希臘字母圓周率 (π) 命名。
from math import pi

d = input("Enter the diameter of the circle:")
c = pi * d

print("The circumference of the circle is:" + c)

詞彙表

[編輯 | 編輯原始碼]
第一個錯誤是一個飛蛾,它在 1947 年測試艾肯中繼計算機時被發現卡在了機器裡。
  • 錯誤 – 原始碼中不需要的錯誤。
  • 註釋 – 被直譯器/編譯器忽略的原始碼行,因此可用於做筆記或除錯。
  • 除錯 – 從原始碼中刪除錯誤。大多數 IDE 都有工具,允許在執行時進行除錯,以便更容易地找到錯誤所在。
  • Hello World – 軟體開發人員在學習新的程式語言時使用的一個流行的測試程式。
  • if 語句 – 一段條件原始碼,根據使用的條件執行特定的原始碼。
  • 縮排 – 在原始碼行之前使用製表符(使用 Tab ↹ 鍵)或空格(使用 空格鍵)。在 Python 中,這對於直譯器理解程式的工作方式是必需的。
  • 整合開發環境 (IDE) – 一種為軟體開發而設計的程式。典型的 IDE 包括一個用於編寫原始碼的文字編輯器、一個用於執行原始碼的直譯器(或編譯器)以及用於除錯在編寫原始碼時出現的錯誤的除錯工具。
  • 直譯器 – 一種程式,它讀取和執行解釋型程式語言(如 Python)的原始碼。
  • 關鍵字 – 為程式語言保留使用的一個詞。Python 中的例子包括:printifelseelifforwhile
  • 原始碼 – 構成程式的程式語言文字。

迴圈

[edit | edit source]
  • For 迴圈 – 一段重複執行的原始碼,它執行一定次數。
  • While 迴圈 – 一段重複執行的原始碼,它由一個條件退出。

變數

[edit | edit source]
布林資料型別以英國數學家喬治·布林的名字命名。
  • 布林值 – 一種變數資料型別,可以是 True 或 False。
  • 資料型別 – 變數儲存的資料型別。Python 是一種動態型別程式語言,因此您可以直接將值賦給變數。
  • 整數 – 一種變數資料型別,用於表示任何正數或負數整數(包括零),沒有小數點。
  • 字串 – 一種變數資料型別,用於定義一系列字元,例如 "Hello World"
  • 變數 – 程式設計師通常在程式開頭定義的具有特定資料型別的值。

模組

[edit | edit source]
  • 模組 – 由其他軟體開發人員編寫的 Python 原始碼檔案。許多模組包含在預設 Python 安裝中,但還有需要使用 pip 或 Anaconda 安裝的外部 Python 模組。
  • pip – 用於安裝標準 Python 安裝中未包含的外部模組的命令列 Python 包管理器。

進一步閱讀

[edit | edit source]

官方 Python 網站 提供了 Python 的非正式介紹。

Wikibooks 上有一個關於 Python 程式設計 的指南。

第 53 期(2017 年 1 月) 的官方 Raspberry Pi 雜誌 MagPi 從第 14 頁開始提供 Python 3 教程。MagPi 每期的 PDF 檔案可以從 Raspberry Pi 網站免費下載,並且可以在寬鬆的 CC BY-NC-SA 3.0 許可下重新共享。

關於 Python 程式語言的書籍很多,可能太多了!Al Sweigart 的書籍可以在他的網站上免費閱讀,如果你覺得這些書籍有用,請購買這些書籍。

標題作者年份ISBN
用 Python 自動執行無聊的事情(第二版)Al Sweigart2019ISBN 978-1593279929

如果你年滿 14 歲,可以透過參加 認證入門級 Python 程式設計師 (PCEP) 認證 成為一名正式的 Python 程式設計師。思科的 SkillsForAll 電子學習平臺提供一個名為 Python Essentials 1 的免費課程。

華夏公益教科書