跳轉到內容

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
  1. 編寫一個程式,列印你的全名和生日作為單獨的字串。
  2. 編寫一個程式,展示所有 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



  1. 許多程式語言中的“Hello, world!”程式列表
華夏公益教科書