在求學階段,你已經對代數的計算熟到不能再熟,所以變數(variable)對你來說應該不至於太陌生,先來看看以下這個例子:
A = 1
B = 1
A+B = 2
你可能覺得這個例子太簡單,直接算 1 + 1 = 2就好了,何必用到變數呢?但是,如果你要寫一個程式,讓使用者輸入第1個數字,接著讓使用者輸入第2個數字,然後得出兩個數字相加的結果,式子就會變得下面這樣子:
A = 使用者輸入第1個數字
B = 使用者輸入第2個數字
A + B = 計算兩數相加的結果
從這個簡單的例子就可以看出,寫程式一定要用到變數(variable),而且程式越複雜,變數就越複雜。
從小到大你學到的數學,都只是在計算數字,所以你可能以為,變數(variable)也只是在計算數字。如果只有這樣,電腦根本不可能發展到目前的AI層面。
大約在1830年代,工業革命爆發不久,當時有一位科學奇才巴貝奇,受到織布機的啟發,懷有一個偉大的夢想:「製造出一台能依程式指令執行各種運算的通用計算機」。這是一個偉大的突破,但是如果僅是這樣,其最好的結果,就是你在文具店買到的工程計算機。
巴貝奇的學生愛達(勒夫雷思夫人),才是電腦數位工業革命的原始推手。愛達是有名詩人拜倫的親生女兒,遺傳到父親的浪漫詩情,又醉心於數學。她稱數學為「詩意的科學」。如果以現代人物來比擬,無疑可以稱作女版賈伯思。
愛達貫注生命力而完成的唯一論文《譯者評注》,在1847年發表。這位像彗星一般,充滿詩情的科學家,提出一項洞見:「毋須把通用機器的作業局限於處理數學和數字,而是可以儲存、操作、處理任何可用符號代表的事物,包括文字、邏輯、音樂,以及其他任何我們可能透過符號來傳達的事物」。(註1)。
現在我們就透過下面的例子來看看,變數(variable)除了處理數字以外還能作甚麼:
A = “Hello “
B = “World!”
A + B = “Hello World!”
了解上述的觀念之後,我們就用Python的開發工具IDLE進行實作。如果已經按照前一個單元,下載安裝好Python + IDLE,現在就可以從Windows 的程式列找到IDLE,然後打開它:
接下來依序輸入下列指令:
A = 1 【按Enter】
B = 1 【按Enter】
A + B 【按Enter 】
你輸入的過程以及結果應該會像下面這樣:
接下來繼續依序輸入以下指令:
A = "Hello "【按Enter】
B = "World!" 【按Enter】
A + B【按Enter】
現在,你輸入的過程以及結果應該會像下面這樣:
你已經在寫Python的程式了,簡不簡單呢?
註1:參考《創新者們,掀起數位革命的天才、怪傑和駭客》,華特.艾蕯克森 著,齊若蘭、陳以禮 譯,遠見天下文化出版股份有限公司,2015年8月28日第一版第1次印行。