講個說服我學 Python 的理由吧!

更新於 發佈於 閱讀時間約 7 分鐘
Python 的優點與缺點
雖然不能說,每一個人都該學 Python。但對於那些沒學過程式語言、且不知道將來想走哪個資訊領域的初學者來說,Python 是這些人應該學的第一個語言,絕對當之無愧!
我個人認為,Python 有下列三個特點,造就它今日的地位:「語法簡單」、「工法完整」、「應用廣泛」。此外,Python 也有「執行緩慢」的缺點。我們將在這個小節,逐一討論 Python 的優缺點,作為您是否要學習 Python 的參考依據。

優點一:語法簡單

一個程式語言要受到初學者歡迎,端看它能在多短的時間內,帶給初學者「成就感」與「信心」。如果用「在螢幕上印出『Hello! World!』這串字」當成比賽題目,看使用 C、Java、Python 三種語言的程式師,可以率先達到目標。那麼 Python 一定是從按下碼表後,第一個達標的。
讓我們先看 C 語言。C 語言得寫出下面這段程式碼、存檔、拿著這個原始碼檔去編譯,才能在螢幕上印出「Hello! World!」:
接著來看 Java 語言。跟 C 語言很類似,得寫出下面這段程式碼,歷經「存檔、編譯、執行」三步驟後,在螢幕上印出「Hello! World!」字樣:
最後是 Python。Python 只要寫下面這段原始碼,直接按 Enter 鍵,不必存檔、不必編譯,就能直接執行,並印出「Hello! World!」字樣:
什麼?就一行?是的!就一行!聰明如您,如果想在螢幕上印出一串字,您會選擇 C?Java?還是 Python 呢?除此之外,Python 還有許多「別人寫十行,我只寫一行」這種「以一打十」的範例。這樣,您分辨得出來哪種語言的語法比較簡單了嗎?

優點二:工法完整

先說明把「工法」這個名詞用在這裡,是我擅自認為這兩個字比較能表達我想說的「意境」才用的,這個名詞並非資訊業界的流通用語。「工法」指的是撰寫程式的原則與方法。在各類程式語言中,常見的「工法」有三種:程序導向物件導向函數導向。大家不要被「XX 導向」什麼的嚇到了,我說個比喻您就會懂。就像一盤青江菜,您可以炒成浙式、川式、廣式三種。本質都是「炒青江菜」,但在作法與過程上,有些不同罷了。程序導向、物件導向、函數導向也是如此,都是能做出特定結果的程式寫作方法而已。
但不是任何語言,都能任意使用上述三種工法,還得該語言有支援某工法的「語法」才行。就像用「潛盾工法」在地底挖隧道,並不適用於任何地質,太鬆軟的地質只能用「明挖覆蓋法」直接破壞表面了。以常見的語言來說,C 語言只支援「程序導向」;Java 支援「程序導向」與「物件導向」,直到 Java 8 之後,才補上支援「函數導向」的語法;而 Python 很早就支援「程序導向」、「物件導向」、「函數導向」三種工法,所以學會 Python 後,學習任何其它語言都會快!就像有「學會西班牙語後,學法語、義大利語都會快」此一說法一樣。
正因 Python 支援的工法完整,學了 Python 之後學其它語言不會慢到哪裡去,所以各大專院校才會鼓吹初學者,把 Python 作為第一個程式語言。這也成為 Python 受到初學者歡迎的原因之一。

優點三:應用廣泛

Python 另一個受到初學者歡迎的原因,是它能以一種語言,用在網頁設計、手機 App 撰寫、遊戲程式設計、硬體自動控制、生物醫學、大數據…等領域。簡單一句話,就是「萬用語言」。這對還沒決定、或還不知道該走哪個領域的初學者來說,非常重要!沒有人想花大把時間學會一個語言後,發現自己喜歡的領域用的是另一種語言,又含著眼淚帶著微笑重頭去學的。
Python 能做到「萬用語言」的原因,莫過於他有豐富的「函式庫(Library)」。所謂「函式庫」,就是把別人事先寫好的一些好用 Python 程式打成一包,允許你直接取用,而不必學習這些程式背後的寫作原理。拿通俗一點的比喻,就像遊戲軟體內的「外掛」,直接使用後,可以讓你不必花力氣去打怪練功,就能取得高分或強力的裝備。
舉例來說,如果您想用 Python 寫個網站,那就加掛 Django 這個函式庫。裡面已經有「建立帳號」、「使用者登入」…等等寫好的功能讓你直接叫用,不必什麼都得自己重頭寫。想寫遊戲,就加掛 PyGame。什麼打光、旋轉、碰撞偵測…人家都幫你寫好了,寫個三行直接叫用就行了!還在頭痛想怎麼同時間學兩種程式語言,並且在 Android、iOS 雙平台寫手機 App 嗎?不必了!用 Python + Kivy 函式庫寫出來的手機 App,讓你能直上兩大平台!想做個自走車還是機械手臂來玩玩?沒問題!花個台幣一千多元買塊 Raspberry Pi 開發板,讓你用內建的 Python 函式庫控制 LED 燈、馬達…等各種硬體電路!其它如生醫領域的 DNA 序列研究、經濟領域的大數據,Python 都有對應的「外掛(函式庫)」供人直接取用。讓你吹著口哨、比別人提早抵達終點。

缺點:效能稍差

前面講了 Python 這麼多好話,它並不是完全沒有缺點。Python 雖然適用於各行各業,但它有個致命傷:慢!
其實這點並不難理解。假設您有把裡面有螺絲起子的瑞士刀,雖然它能拿來轉螺絲,但沒辦法像專業的螺絲起子做得長長的,發揮強大的力矩槓桿作用,讓螺絲轉起來輕鬆容易。更別提有人拿笨重、但迅速的專業電動螺絲起子了。
Python 也是如此!所謂「追二兔不得一兔」,為了能在各種場合都發揮作用,就得取各種場合的「平衡點」,沒辦法為單一情況做「最佳化」!正如那把瑞士刀,雖然它能做各種事情,但不可能如專業工具稱手。Python 的架構工程師,最後就做出「為了功能,犧牲效能」的決定。
不過最近幾年,也有 Python 同好開發出「Python 編譯器」,就是直接把 Python 原始碼,翻譯成 0 與 1 來表示的軟體。不過「編譯器」也不是萬靈丹!經過實際測試,編譯成二進位碼的 Python 某些時候跑得比 Java 還快,但某些場合又吊車尾。所以這完全看「Python 編譯器」的好壞。編譯得好,就跑得快;編譯得不好的部分,自然效能就差了點。
但有一派人士的說法:CPU 效能年年加快,Python 本身效能緩慢問題,應該能被新的 CPU 速度稍稍解決。所以我的看法,還是鼓勵初學者不用太在意「速度」這件事,先把你想寫的東西用 Python 寫出來比較要緊!畢竟「先求有,再求好」。如果將來「速度」真的成了致命傷,到時候再來想想如何加速就可以了!

結論:學 Python,應用廣,轉檯易!

所以,如果您是對自己比較沒信心,或是還沒決定走哪個領域的朋友,那就先學 Python!不但好學,而且將來想轉檯到其它語言也快!但若您已經確定自己有興趣的領域,比如「遊戲程式設計」,那我會建議您直接學該領域的專用語言比較好。以「遊戲程式設計」來說就是 C++。
至此,不知您是否對於該不該學 Python 語言,心中已經有答案了呢?
即將進入廣告,捲動後可繼續閱讀
為什麼會看到廣告
avatar-img
3會員
4內容數
「程式語言也可以輕鬆閒聊!」做為一個學習程式設計 30 年的老骨頭,面對許多人學習程式的急迫與焦慮感,會希望大家放輕鬆!其實程式語言不過是與「電腦星人」日常對話的一種方法而已!期待大家透過這個專題,能一點一滴地解除防衛心,張開雙臂擁抱「電腦」這位新朋友!
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
紀俊男的沙龍 的其他內容
不管您是好奇心重、去查了英文字典,還是英文程度不錯,本來就知道 Python 這個字是「蟒蛇」的意思。但根據 Python 之父 Guido van Rossum 所說,Python 這程式語言的名稱由來,其實跟「蟒蛇」一點關係都沒有...。
Python 從創立之初的沒沒無名,至今被譽為「初學者最佳語言」,在 Python  社群背後默默貢獻的「鄉民」們居功厥偉!讓我們來看一下 Python 那些年的歷歷往事。
不管您是好奇心重、去查了英文字典,還是英文程度不錯,本來就知道 Python 這個字是「蟒蛇」的意思。但根據 Python 之父 Guido van Rossum 所說,Python 這程式語言的名稱由來,其實跟「蟒蛇」一點關係都沒有...。
Python 從創立之初的沒沒無名,至今被譽為「初學者最佳語言」,在 Python  社群背後默默貢獻的「鄉民」們居功厥偉!讓我們來看一下 Python 那些年的歷歷往事。
你可能也想看
Google News 追蹤
Thumbnail
現代社會跟以前不同了,人人都有一支手機,只要打開就可以獲得各種資訊。過去想要辦卡或是開戶就要跑一趟銀行,然而如今科技快速發展之下,金融App無聲無息地進到你生活中。但同樣的,每一家銀行都有自己的App時,我們又該如何選擇呢?(本文係由國泰世華銀行邀約) 今天我會用不同角度帶大家看這款國泰世華CUB
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Python 是一個功能強大且易於學習的程式語言,適合初學者快速上手。今天,我們將介紹 Python 的幾個基礎概念,涵蓋變數、資料型別、運算符、條件判斷、迴圈和函式,這些是所有 Python 程式的核心組件。
Python 是一種功能強大且易於學習的程式語言,無論是初學者還是經驗豐富的開發者都可以從中獲益。在 Windows 作業系統上運行 Python,有許多不同的環境可以選擇,從基於網頁的開發環境到功能強大的集成開發環境 (IDE)。
Python 是目前最受歡迎的程式語言之一,它被廣泛應用於多個領域,如資料分析、網頁開發、機器學習和自動化。這篇文章將詳細介紹 Python 的基礎語法,並探討 Python 的優缺點、與其他程式語言的比較,最終解答為什麼你應該學習 Python。
Thumbnail
從範例學python的目標讀者: 針對剛進入的初學者,想學習Python語言。 有基礎本數學邏輯基礎即可。 從小遊戲學python的目標讀者: 針對已經有經驗的C/C++, Python, 或其他有程式基礎的讀者。 想實作一些小專案,從實做中學習如何分析需求、元件分拆、到底層實作
Thumbnail
想要使用python學習程式應該要怎麼開始呢? 首先就是要下載Python(程式語言)還有Pychar(整合開發環境,IDE)這兩個軟體。 在Google的搜尋欄位打上Python下載, 點選第一個Download Python。 第二步點選Download,選擇你的電腦系統。
Thumbnail
Python擁有便攜性和通用性,適用於多種場景,同時具有全球通用性。Python在科技製造業、資料分析、人工智慧等領域有廣泛應用,對於理工科背景者而言有獨特的優勢。透過在線課程、自學書籍、實作專案,以及參與社群和開源專案,理工背景者可以達成從轉職進入Python程式領域的目標。
Thumbnail
什麼是Python python是電腦程式語言的一種,如同python官方網站上的介紹 "Python是一種程式語,可讓你更快速地工作並更有效的整合系統"。簡單地說,就是你可用python這個程式語言去告訴電腦你想要作什麼,讓電腦來幫你完成你要作的事情。
Thumbnail
Python是一種易學且功能強大的程式語言,具有直譯、動態語法等特性,並擁有豐富的標準庫。它在各領域如Web開發、數據科學和人工智慧等得到廣泛應用,並被許多大公司如Google和Facebook等使用。Python還有強大的框架、豐富的交互機能、和龐大的社區。
Thumbnail
今天來介紹python的函式 函式在python中是非常重要的一環,因為到了後期,程式會越來越複雜。 而函式可以想成是容易管理的小程式,當我們需要使用時,只需呼叫即可。
Thumbnail
初入IT產業的人士在學習Python語言後,IT證照如ITS Python認證是否值得考取?本文以ITS證照特點、實施建議和IT認證考試資訊為主,詳述證照的好處和準備時間。
Thumbnail
現代社會跟以前不同了,人人都有一支手機,只要打開就可以獲得各種資訊。過去想要辦卡或是開戶就要跑一趟銀行,然而如今科技快速發展之下,金融App無聲無息地進到你生活中。但同樣的,每一家銀行都有自己的App時,我們又該如何選擇呢?(本文係由國泰世華銀行邀約) 今天我會用不同角度帶大家看這款國泰世華CUB
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Python 是一個功能強大且易於學習的程式語言,適合初學者快速上手。今天,我們將介紹 Python 的幾個基礎概念,涵蓋變數、資料型別、運算符、條件判斷、迴圈和函式,這些是所有 Python 程式的核心組件。
Python 是一種功能強大且易於學習的程式語言,無論是初學者還是經驗豐富的開發者都可以從中獲益。在 Windows 作業系統上運行 Python,有許多不同的環境可以選擇,從基於網頁的開發環境到功能強大的集成開發環境 (IDE)。
Python 是目前最受歡迎的程式語言之一,它被廣泛應用於多個領域,如資料分析、網頁開發、機器學習和自動化。這篇文章將詳細介紹 Python 的基礎語法,並探討 Python 的優缺點、與其他程式語言的比較,最終解答為什麼你應該學習 Python。
Thumbnail
從範例學python的目標讀者: 針對剛進入的初學者,想學習Python語言。 有基礎本數學邏輯基礎即可。 從小遊戲學python的目標讀者: 針對已經有經驗的C/C++, Python, 或其他有程式基礎的讀者。 想實作一些小專案,從實做中學習如何分析需求、元件分拆、到底層實作
Thumbnail
想要使用python學習程式應該要怎麼開始呢? 首先就是要下載Python(程式語言)還有Pychar(整合開發環境,IDE)這兩個軟體。 在Google的搜尋欄位打上Python下載, 點選第一個Download Python。 第二步點選Download,選擇你的電腦系統。
Thumbnail
Python擁有便攜性和通用性,適用於多種場景,同時具有全球通用性。Python在科技製造業、資料分析、人工智慧等領域有廣泛應用,對於理工科背景者而言有獨特的優勢。透過在線課程、自學書籍、實作專案,以及參與社群和開源專案,理工背景者可以達成從轉職進入Python程式領域的目標。
Thumbnail
什麼是Python python是電腦程式語言的一種,如同python官方網站上的介紹 "Python是一種程式語,可讓你更快速地工作並更有效的整合系統"。簡單地說,就是你可用python這個程式語言去告訴電腦你想要作什麼,讓電腦來幫你完成你要作的事情。
Thumbnail
Python是一種易學且功能強大的程式語言,具有直譯、動態語法等特性,並擁有豐富的標準庫。它在各領域如Web開發、數據科學和人工智慧等得到廣泛應用,並被許多大公司如Google和Facebook等使用。Python還有強大的框架、豐富的交互機能、和龐大的社區。
Thumbnail
今天來介紹python的函式 函式在python中是非常重要的一環,因為到了後期,程式會越來越複雜。 而函式可以想成是容易管理的小程式,當我們需要使用時,只需呼叫即可。
Thumbnail
初入IT產業的人士在學習Python語言後,IT證照如ITS Python認證是否值得考取?本文以ITS證照特點、實施建議和IT認證考試資訊為主,詳述證照的好處和準備時間。