Python is an easy to learn, powerful programming language. It has efficient high-level data structures and a simple but effective approach to object-oriented programming. Python’s elegant syntax and dynamic typing, together with its interpreted nature, make it an ideal language for scripting and rapid application development in many areas on most platforms.
Python 是一種廣泛用途程式語言(General-purposed programming language),具有高階、直譯、與簡潔的特性,由荷蘭電腦科學家 Guido van Rossum 於 1991 年創造,目前由 Python 軟體基金會維護。Python 在資料科學、網站開發與系統自動化等應用領域中倍受熱愛,全球知名公司像 Pixar 用於電影製作、Twitch 用於系統建置以及 Spotify 用於推薦歌曲。在 NumPy、SciPy、Pandas、Matplotlib、Scikit-Learn、TensorFlow 與 PyTorch 等套件的強力加持下 Python 成為世界各地資料科學團隊的首選,團隊裡的資料科學家使用 Python 從資料中挖掘特徵尋找洞見(Insight)、資料工程師使用 Python 建構與部署機器學習與自動化系統,為企業獲取競爭優勢。
驚人的受歡迎程度
截至 2021 年 7 月,Python 在 TIOBE Index 排名第 3 位、在 2020 IEEE Top Programming Languages 調查排名第 1 位、在 StackOverflow Trends 以 16% 問題比率排名第 1 位;根據資料科學家社群 Kaggle 在 2020 年針對網站會員所發出的問卷,Python 在資料科學家日常頻繁使用語言中排名第一,對於技能組合涵蓋資料科學與軟體工程的約維安而言,學習 Python 的重要性不言可喻。
Python 風格指南
風格指南(Style guide)指的是一套規範程式語言在寫作時必須遵守的編排、格式和設計的準則,遵從風格指南能夠確保每一段程式碼都和其他不同人寫作的程式碼有高度一致性,被眾多使用者採用的 Python 風格指南是官方的 Python 改進提案(Python Enhancement Proposals, PEPs)第八項:https://www.python.org/dev/peps/pep-0008,約維安計畫也同樣遵循 Python 改進提案第八項,其中值得注意的幾個重點有:
縮排使用四個空格,不同於多數的程式語言使用一對大括號(A curly-brace pair)將敘述包裝形成程式區塊(Code blocks),Python 使用縮排(Indentations)將敘述包裝為程式區塊,因此這個風格顯得格外重要。
命名的時候使用全小寫英文,採用蛇形命名法(Snake case),不同單字之間以底線 _ 相隔。
不能使用保留字作物件的命名,會產生錯誤,Python 的保留字可以參考:https://docs.python.org/3/reference/lexical_analysis.html#keywords
使用單數名詞為資料型別(Data types)實例的物件命名,使用複數名詞為資料結構(Data structures)實例的物件命名,使用動詞為函數(Functions)或方法(Methods)命名,盡量讓名稱簡潔且具有意義。
不要使用內建函數作物件的命名,避免覆蓋內建函數的功能,Python 的內建函數可以參考:https://docs.python.org/3/library/functions.html。
# Good Python naming
taiwan_number_one = True
taiwan_number_1 = True
# Bad Python naming
taiwanNumberOne = True
Taiwan_Number_One = True
TaiwanNumberOne = True
twno1 = True
int = 87 # int() is a built-in function
Python 的哈囉世界
「哈囉世界」是每種語言最基本也最簡單的程式,通常用作確認一個語言如何運作、編譯器、開發環境及執行環境是否已經安裝妥當。要順利運行 Python 的哈囉世界以及未來的 Python 資料科學應用,首先要確定在 Jupyter 星球的伺服器選項選擇了「Data science environment:學習 Python、R 與 Julia 的資料科學環境」。
忘記了什麼是 Jupyter 星球嗎?複習一下約維安計畫:第零週吧!
伺服器啟動之後來到 Jupyter 星球的首頁,在右方 Launcher 點選新增一個核心(Kernel)為 Python 3 的 Jupyter Notebook。
並且在 Jupyter Notebook 的第一個儲存格中印出 Python 的哈囉世界:
print("Hello, World!")
除了 Python 的哈囉世界,我們也很鼓勵初學者花一點時間閱讀 Python 禪學(The Zen of Python),暸解設計以及愛好這個程式語言的人在解決問題或者面臨抉擇的時候,大都採用什麼樣的價值觀與思緒,我最喜歡的一句 Python 禪學是:
Now is better than never.
在 Jupyter Notebook 的第二個儲存格中印出 Python 禪學:
import this
大功告成,在順利執行了 Python 的哈囉世界以及 Python 禪學之後,約維安計畫:第十二週來到尾聲,希望您也和我一樣期待下一篇文章。
不知道各位閱讀完 Python 禪學之後最喜歡的是哪一句?請執行 import this
過後的中級約維安在這篇文章留言回覆🙋跟我們分享你最喜歡的一句 Python 禪學😻
這兩句都很喜歡 :)
Now is better than never.
Simple is better than complex.