第一個 Python 程式

feature image

source: Pixabay

前言 & 概述

本篇為 Python 程式語言入門教學的第 4 篇文章!在前一篇文章中,我們學習了 Python 中「變數」的觀念,以及基本的「資料類型」。這兩者都是許多程式語言共同擁有的元素,如果你還不了解,可以先閱讀前一篇文章。

如果你喜歡透過影片學習:

第一個 Python 程式的功能

在第一個完整的 Python 程式中,我們的目標在於實現程式的「互動性」。我們希望程式可以和使用者「互動」;也就是說,我們程式可以接受使用者的輸入,經過一些運算後,輸出一些資訊給使用者。

更具體來說,我們希望使用者透過「鍵盤」輸入一些文字或是數字,程式取得使用者的輸入後,進行一些運算與處理,將最後的結果輸出到「螢幕」上。

電腦的輸入與輸出裝置

你也許會覺得奇怪,為什麼需要特別強調「鍵盤輸入」與「螢幕輸出」呢?!原因在於我們的電腦所連接的輸入裝置不只有「鍵盤」,輸出裝置當然也不只有「螢幕」!

input and output device of cimputer

電腦有許多輸入與輸出裝置

如上圖所示,電腦的輸入裝置還包含:「滑鼠」、「鍵盤」、「攝影機」;輸出裝置包含:「印表機」、「螢幕」與「喇叭」。我們可以在程式中自由的決定要處理哪一個輸入裝置的資訊,並將結果輸出到哪一個輸出裝置。

程式碼撰寫

了解電腦的輸入與輸出裝置後,我們可以開始來撰寫程式碼囉!首先,開啟 Colab,將下圖的程式碼一字不漏地打在 Colab 上並且執行!之所以使用圖片的原因,是因為不讓你複製呀!第一次學習程式,一定要盡可能都是自己一個一個打的,這樣才會進步的快!

python program

第一個 Python 程式

執行上面的程式碼時,會有兩次「輸入」的機會,執行完後應該會類似程式碼下方 (黑色字體) 的結果。

了解程式碼

別擔心自己不懂上面的程式碼,我們接下來將會逐行解釋,若有任何問題也歡迎在 YT 中留言詢問!

  • 第 1 行:以「#」開頭的在 Python 中都會被當作「註解」。Python 程式在執行時會忽略註解。透過註解解釋程式碼的意義,日後回頭看這份程式碼時就會更容易讀懂。
  • 第 2 行:透過 print( ) 函式將字串顯示在螢幕上。針對「函式」的概念,我們會在之後的文章介紹到。在這裏,我們只需要先了解呼叫 (使用) print( ) 函式時,必須將想要顯示在螢幕上的字串傳入 print( ) 函式中。例如,我們將字串 ‘Hello World !’ 放在 print( ) 函式的括號中。執行後,螢幕就會顯示「Hello World !」。傳入函式的東西,我們又稱為「參數」。
  • 第 3-4 行:與第 2 行一樣,都是透過 print( ) 函式,將字串顯示在螢幕上。特別的是,在第 3 行的 print( ) 的參數,使用了字串乘法 (String Replication) 的技巧。
  • 第 5 行:透過 input( ) 函式接收使用者輸入的資料。在 Colab 上執行 input( ) 函式時,Colab 會出現一個框框,等待使用者輸入文字。當使用者按下 Enter 後,就會當作完成輸入,並將使用者輸入的文字打包成「一個字串」存到變數 (myName) 當中。
  • 第 6 行:一樣透過 print( ) 函式將字串顯示在螢幕上。特別的是,這一次我們透過字串加法 (String Concatnation) 準備print( ) 函式的參數。這邊要特別注意,不管是字串乘法或是字串加法,我們傳入 print( ) 函式的參數,始終都只有「一個字串」。
  • 第 7 行:透過 len( ) 函式計算字串的長度。當我們將字串傳入 len( ) 函式時,len( ) 會回傳這個字串的長度。因為 len( ) 函式回傳的東西為整數型別 (int type),無法進行字串加法,因此我們透過 str( ) 函式將整數型別再轉為字串型別 (str type)。
  • 第 8-11 行:都是前面已經出現過的觀念,我們就不再贅述!

我們再更深入的說明第 7 行的觀念。我們可以看看下圖的程式碼:

python len function

透過 Python 中的 len( ) 函式取得字串長度

len( ) 函式會回傳我們傳入的字串的長度。len( ) 所回傳的字串長度為整數型別 (int)。在程式中,我們因為需要進字串加法,所以將整數型別 (int) 的 3 轉為字串型別 (str) 的 ‘3’。

型別轉換

型別轉換在程式中相當常見,因為不同的型別有不同的特色。例如,字串型別 (str) 可以進行字串的加法 (Concatenation) 與乘法 (Replication)。整數型別 (int) 與浮點數型別 (float) 都可以進行數值運算。

如下圖所示:

python type conversion

Python 中的型別轉換

透過 str( ) 將整數 3 轉為 字串 ‘3’;透過 int( ) 將字串 ‘3’ 轉為整數 3;透過 float( ) 將字串 ‘3’ 轉為浮點數 3.0。

結語

本篇文章中,我們撰寫了第一個具有互動性的 Python 程式,在程式中我們使用了前一篇文章提過的許多觀念,也介紹了新的觀念 —— 函式,將會在之後的文章深入介紹。下一篇文章,我們將學習 Python 程式中的流程控制 —— Python Boolean Operator