Python 2.6 非程式設計師教程/Hello, World
你應該知道如何在文字編輯器或 IDLE 中編輯程式,儲存檔案並在檔案儲存到磁碟後執行檔案。
從一開始,程式設計教程就以一個小程式開始,叫做“Hello, World!”[1] Python 3.0 中的語法有所改變。如果你使用的是 Python 3.0,你應該閱讀 Python 3 非程式設計師教程。所以這是 Python 2.6 的例子。
print "Hello, World!"
如果你使用命令列執行程式,那麼用文字編輯器輸入它,儲存為 hello.py,然後用 python hello.py 執行它。
否則,進入 IDLE,建立一個新視窗,並按照 建立和執行程式 部分建立程式。
當這個程式執行時,它會打印出以下內容
Hello, World!
現在我不會每次都告訴你,但是當我向你展示一個程式時,我建議你輸入它並執行它。當我輸入它時,我學得更快,你可能也是。
現在這裡有一個更復雜的程式
print "Jack and Jill went up a hill"
print "to fetch a pail of water;"
print "Jack fell down, and broke his crown,"
print "and Jill came tumbling after."
當你執行這個程式時,它會打印出以下內容
Jack and Jill went up a hill to fetch a pail of water; Jack fell down, and broke his crown, and Jill came tumbling after.
當計算機執行這個程式時,它首先看到這一行
print "Jack and Jill went up a hill"
所以計算機打印出
Jack and Jill went up a hill
然後計算機向下移動到下一行,看到
print "to fetch a pail of water;"
所以計算機列印到螢幕上
to fetch a pail of water;
計算機繼續檢視每一行,遵循命令,然後繼續下一行。計算機不斷執行命令,直到它到達程式的末尾。
現在可能是給你一些解釋正在發生的事情 - 以及一些程式設計術語的好時機。
我們上面做的是使用一個叫做 print 的 命令。print 命令後面跟著一個或多個 引數。所以在這個例子中
print "Hello, World!"
只有一個 引數,即 "Hello, World!"。請注意,這個引數是一組用雙引號 (") 括起來的字元。這通常被稱為 字串。另一個字串的例子是 "Jack and Jill went up a hill"。
命令及其引數統稱為 語句,所以
print "Hello, World!"
就是一個語句的例子。
現在可能已經足夠多的術語了。
這裡還有另一個程式
print "2 + 2 is", 2 + 2
print "3 * 4 is", 3 * 4
print "100 - 1 is", 100 - 1
print "(33 + 2) / 5 + 11.5 is", (33 + 2) / 5 + 11.5
這裡是在程式執行時的 輸出
2 + 2 is 4 3 * 4 is 12 100 - 1 is 99 (33 + 2) / 5 + 11.5 is 18.5
如你所見,Python 可以將你的六百美元電腦變成一個兩美元的計算器。
在這個例子中,print 命令後面跟著兩個引數,每個引數之間用逗號隔開。所以對於程式的第一行
print "2 + 2 is", 2 + 2
第一個引數是字串 "2 + 2 is",第二個引數是 數學表示式 2 + 2,它通常被稱為 表示式。
需要注意的是,字串按原樣列印(字串是雙引號內的內容,但不包括雙引號本身。所以字串在列印時不包含引號。)但 表示式 被 評估(換句話說,轉換)為它的實際值。
Python 有六個基本的數字運算
| 運算 | 符號 | 例子 |
|---|---|---|
| 冪(指數) | **
|
5 ** 2 == 25
|
| 乘法 | *
|
2 * 3 == 6
|
| 除法 | /
|
14 / 3 == 4
|
| 餘數(模運算) | %
|
14 % 3 == 2
|
| 加法 | +
|
1 + 2 == 3
|
| 減法 | -
|
4 - 3 == 1
|
注意,除法遵循規則,如果一開始沒有小數,那麼最終也不會有小數。以下程式展示了這一點
print "14 / 3 = ", 14 / 3
print "14 % 3 = ", 14 % 3
print
print "14.0 / 3.0 =", 14.0 / 3.0
print "14.0 % 3.0 =", 14.0 % 3.0
print
print "14.0 / 3 =", 14.0 / 3
print "14.0 % 3 =", 14.0 % 3
print
print "14 / 3.0 =", 14 / 3.0
print "14 % 3.0 =", 14 % 3.0
print
輸出
14 / 3 = 4 14 % 3 = 2 14.0 / 3.0 = 4.66666666667 14.0 % 3.0 = 2.0 14.0 / 3 = 4.66666666667 14.0 % 3 = 2.0 14 / 3.0 = 4.66666666667 14 % 3.0 = 2.0
注意 Python 如何根據是否使用小數值來給出一些問題的不同答案。
運算順序與數學中相同
- 括號
() - 指數
** - 乘法
*、除法/和餘數% - 加法
+和減法-
因此,在需要時使用括號來構建你的公式。
在程式設計中,你經常做一些複雜的事情,將來可能不記得自己做了什麼。發生這種情況時,程式可能應該被註釋。註釋 是你和其他程式設計師用來解釋正在發生的事情的說明。例如
# Not quite PI, but an incredible simulation
print 22.0 / 7.0 # 355/113 is even more incredible rational approx to PI
輸出
3.14285714286
注意,註釋以井號開頭:#。註釋用於與閱讀程式的其他人以及你未來的自己進行交流,以清楚地說明什麼是複雜的。
注意,任何文字都可以放在註釋之後,當程式執行時,# 之後到該行末尾的文字會被忽略。# 不必放在新行的開頭
# Output PI on the screen
print 22.0 / 7.0 # Well, just a good approximation
每一章(最終)都會包含本章介紹的程式設計特性的例子。你應該至少瀏覽一下,看看是否理解它們。如果你不理解,你可能需要輸入它們,看看會發生什麼。隨意修改它們,看看會發生什麼。
Denmark.py
print "Something's rotten in the state of Denmark."
print " -- Shakespeare"
輸出
Something's rotten in the state of Denmark.
-- Shakespeare
School.py
# This is not quite true outside of USA
# and is based on my dim memories of my younger years
print "First Grade"
print "1 + 1 =", 1 + 1
print "2 + 4 =", 2 + 4
print "5 - 2 =", 5 - 2
print
print "Third Grade"
print "243 - 23 =", 243 - 23
print "12 * 4 =", 12 * 4
print "12 / 3 =", 12 / 3
print "13 / 3 =", 13 / 3, "R", 13 % 3
print
print "Junior High"
print "123.56 - 62.12 =", 123.56 - 62.12
print "(4 + 3) * 2 =", (4 + 3) * 2
print "4 + 3 * 2 =", 4 + 3 * 2
print "3 ** 2 =", 3 ** 2
print
輸出
First Grade 1 + 1 = 2 2 + 4 = 6 5 - 2 = 3 Third Grade 243 - 23 = 220 12 * 4 = 48 12 / 3 = 4 13 / 3 = 4 R 1 Junior High 123.56 - 62.12 = 61.44 (4 + 3) * 2 = 14 4 + 3 * 2 = 10 3 ** 2 = 9
- 編寫一個程式,列印你的全名和生日作為單獨的字串。
- 編寫一個程式,展示所有 6 個數學函式的使用。
1. 編寫一個程式,列印你的全名和生日作為單獨的字串。
print "Ada Lovelace", "born on", "November 27, 1852"
2. 編寫一個程式,展示所有 6 個數學運算子的使用。
#Anything along these lines is acceptable:
#Addition
print "2 + 5 = ", 2 + 5
#subtraction
print "9 - 3 = ", 9 - 3
#multiplication
print "3 * 3 = ", 3 * 3
#division
print "90 / 5 = ", 90 / 5
#exponents
print "7 to the power of 2 (squared) = ", 7 ** 2
#remainder
print "the remainder when doing 22 / 9 = ", 22 % 9