心平的學習歷程 - 111-1大數據分析 - 2. Python 入門 |
|
|
2. Python 入門Python 入門是什麼Python 是一種直譯式、物件導向、功能強大的高階程式語言,其設計強調程式碼的可讀性以及簡潔的語法,使用空格縮排來劃分程式碼區塊,不像其他常見的程式語言大多使用大括號或關鍵詞。 因此,Python 程式的結構清楚明瞭,比起其他常見的程式語言(例如 C 或 Java 等),Python 讓開發者能用更少的程式碼達到同樣的結果。 Python 最方便也最厲害的就是擁有非常多函式庫(Library),任何能想到的功能或方法都已有人整合起來,只要善加利用,就能節省大量開發時間,尤其對人力少又需搶時間發展產品的新創來說,這真的超棒! Python 的實務應用主要有: 數據處理與分析資料處理、統計與分析不管在商業領域或科學研究上一直都極重要,以往大多用 Excel 工具來完成這項任務,但隨著硬體設備提升、互聯網發達,取得並儲存海量資料已經不像從前那麼困難又高成本。 而 大數據(Big Data)分析能大幅降低統計誤差,增加準確率,慢慢發展為新趨勢,不過 Excel 能處理的資料量有限,使得 R 和 Python 漸漸興起。 Python 有許多專門處理數據分析的函式庫可以方便運用,再加上與 R 相比,除了統計用途,還多了能建構應用程式、系統或網站的功用,所以更通用許多。 Python 可以很方便處理並分析數據的特性,更進一步發展運用到人工智慧 (Artificial Intelligence,AI)。 AI 涵蓋機器學習(Machine Learning)和深度學習(Deep Learning),每天都有成千上萬的相關專案在用著數百個 Python 函式庫,例如 TensorFlow、Keras、Torch,以及用於電腦視覺 OpenCV 等。 網站開發雖然絕大部分網站開發是用 PHP、Java、JavaScript 等程式語言,可是現在 Python 也越來越多人用,因為強大的函式庫、廣泛的實際應用使 Python 日漸成為 Web 開發的必需。 與 Web 框架有關的函式庫較熱門的有 Django、Weppy、Bottle、Flask 等,其中 Django、Weppy 為較重量級的 Web 框架,Bottle、Flask 則是輕量級 自動化測試任何產品在發表前都需要經過一道道「測試」,測試的程序通常要花費大量時間,如果用人工測試極度浪費人力成本,所以自動化測試尤其必要。
Python 有許多協助自動化測試的函式庫,例如用來幫助測試網頁前端的 Selenium、以關鍵字驅動為主的自動化測試工具 Robot Framework 等。 容易理解Python 是一種解釋型語言,語法簡化而不複雜,強調自然語言,所以讀寫 Python 就像在用英文跟電腦溝通,十分貼近一般人的使用習慣,非常直覺又很容易撰寫。 簡短的程式碼就有強大的功能Python 有上百個函式庫供其他開發者可以輕鬆使用,短短的程式碼就能實現所需功能,因此大幅減少開發初期需耗費的時間與精力。 而這主要是因為背後強大且發展成熟的社群,不但支援與開發大量的函式庫與框架,而且幾乎完全免費,還提供大量文件和教學影片,讓不同級別的學習者與開發者都能輕易增強所需知識。 任何一個程式語言只要缺少開發人員支持,就很難被廣泛使用,甚至面臨絕跡,但 Python 社群非常活躍,沒有這個問題,如果有任何疑問,都可以獲得社群裡各式各樣不同開發人員的即時支持。 容易維護Python 的架構非常明確,再加上同樣的一個功能,Python 可以比其他程式語言用更少的程式碼達成,所以相對容易維護許多。 程式碼少,當然出錯的機率就更低! 應用範圍廣豐富的函式庫讓 Python 的應用範圍非常廣泛,不僅可用來開發網站、應用程式與系統等,許多雲端服務供應商也以類似函式庫的方式提供跨平台支援工具,真的十分方便。 還有許多特定用途的函式庫,比如應用於機器學習的 scikit-learn、專門處理自然語言的 NLTK (natural language toolkit)等。 執行速度慢Python 好讀好寫,是解釋型程式語言而非編譯型,很多其他語言(比如 C 或 Java)在編譯時會先做好的處理,Python 在執行的時候才開始做,所以執行速度相對地就比較慢。 不過,同樣地,程式碼也比其他程式語言少好幾倍。 強制縮排如果你有學過其他程式語言,會發現大多數常見的程式語言是用大括號來區分函式、類別或功能,但 Python 是用 4 個空白鍵縮排來區分,一定要特別注意,若沒有按照這個規則會出現錯誤。
|
|
中華科技大學數位化學習歷程 - 意見反應 |