Python 是一種易於解譯的高階物件導向程式語言,語法易於閱讀。Python 非常適合用於原型設計和臨時任務,廣泛應用於科學運算、網頁開發和自動化。作為一種通用且適合初學者的程式設計語言,Python 支援全球眾多頂尖電腦科學家和應用程式開發人員。
想聽聽名人的推薦嗎?以下是 Google 研究總監 Peter Norvig 的說法:「Python 從一開始就是 Google 的重要一環,隨著系統成長與演進,至今仍然如此。」
充分瞭解 Python 作為開放原始碼程式語言的各個層面非常重要。我們將討論 Python 開發、Python 程式庫,以及一些歷史與未來趨勢。繼續閱讀,深入了解這門優雅而令人驚豔的語言。
Python 是許多新手程式設計師的第一種語言。在大學電腦科學課程中,這通常是最先介紹的內容。為什麼呢?
其中一點是,Python 具備良好的可讀性。有時,它甚至接近英文;只要稍微了解這門語言,您就能瀏覽程式碼,了解它試圖達成的目的。
這與同世代其他可能較令人困惑的應用程式語言形成對比。將 "Hello, world!" 輸出至電腦主控台的 Python 範例。
print("Hello, world!")與大多數其他開發語言不同,Python 程式碼仰賴縮排。簡而言之,您需要以特定且可預測的方式,在指定程式碼區塊內的程式碼行加入空格。否則,程式碼將無法執行。
這可能會讓 Python 新手程式設計師感到挫折!對初學者來說,Python 語法有時確實會令人感到挫折。但在練習使用這門語言一段時間後,大多數人都會對它推崇備至。由於您的程式碼遵循可預測的視覺邏輯,因此更容易閱讀——無論是對日後可能接觸您作品的其他程式設計師,或是未來的您自己而言,都是如此!
1989 年,Guido van Rossum 在荷蘭的一間電腦科學實驗室工作。他決定撰寫一種語言,以改善當時最受歡迎語言的缺點。五年半後,他發布了這個語言,並以他喜愛的英國喜劇節目《 Monty Python's Flying Circus 》將其命名為「Python」。
一開始進展緩慢,但當成立不久的 Google 宣布其許多內部流程都使用 Python 時,Python 獲得了重大突破。
2005 年,Python 發布了 Django,這是一個用於建置 Web 應用程式的框架。Django 迅速竄紅,並開始挑戰當時占主導地位的 Ruby on Rails 架構。
到了 2011 年,Python 已成為全國電腦科學課程中最常教授的程式語言。幾年後,它成為機器學習和人工智慧領域研究人員的實質標準,這可能是因為它易於使用且可讀性高。
雖然 von Rossum 在 Python 早期多年自封為 Python 的「仁慈獨裁者」,但 Python 的開發現在由 Python Software Foundation 負責。
隨著其地位受到當代最尖端領域的鞏固,Python 的未來一片光明!
作為一種通用語言,答案是:幾乎任何事!當您需要簡化複雜任務、執行簡短指令碼,或處理大型資料集時,Python 都能勝任。
這只是冰山一角!Python 程式設計語言活躍應用在當代電腦科學的所有領域。由於 Python 開發比大多數其他語言更有效率,因此對於必須快速且便宜地變更程式碼基礎的新創公司而言,這是熱門選擇。
它也深受科學家和數學家的喜愛,具備許多強大的內部程式庫,可用於統計分析和複雜的數學運算。
套件庫是任何現代程式設計語言不可或缺的服務。若沒有它們,每位程式設計師都必須自行撰寫軟體來處理最例行、最常見的工作。
值得慶幸的是,Python 提供豐富的套件選擇,可滿足您的各種程式設計需求。您可以在 Python Package Index 瀏覽它們。以下列出一些以 Python 撰寫的明星級程式庫:
Web Python 應用程式通常建構於 Flask 和 Django 這兩大主要平台。Flask 更簡單、更簡潔,也更適合初學者。Django 具備更多功能,並可擴展以支援大量使用者。
如果你有 JavaScript 背景,Flask 之於 Django,就如同 Express 之於 Nest。
更具體而言, Flask 是一個「微型 Web 架構」。它比一般充斥著樣板程式碼的工具小得多。不需要任何外部程式庫或元件,完全以原生 Python 建置。不過,您可以輕鬆整合第三方工具,以提升成效。
Flask 專為快速應用程式開發而設計。非常適合在使用 Django 等較大型架構進一步完整發展新想法之前,先製作原型。
Django 是 Python 最受歡迎的 Web 架構,它有多受歡迎?
社群媒體巨擘 Instagram 透過 Django 擴展至百萬名使用者。目前,Pinterest、Udemy、Spotify 和 Dropbox 都在使用它。就是這麼受歡迎。根據其文件,Django 是一個開放原始碼架構,專為「有期限壓力的完美主義者」而設計。它支援跨平台,在 Windows 和 Mac 上都能同樣順暢運作。
Django 是以 MVC 模型為基礎建構,MVC 是 Model-Viewer-Controller 的縮寫。MVC 是電腦科學中的一種特殊模式,其目標是將 Web 應用程式的關注點分離為三個獨立元件。
當客戶端傳送請求時,請求會先到達控制器,由控制器處理不同傳入請求的流量。它會將該流量傳遞給不同的模型,由這些模型處理請求的資料與邏輯。接著,模型會將該回應匯出至檢視器,由檢視器將資料呈現轉譯至用戶端。
這造就了一個簡單且具備容錯能力的架構。因此,Django 在規模與複雜度擴展方面表現出色。
Python 最主要的優勢在於資料科學與機器學習。如何開始探索這些突破性領域?
您可能會想先熟悉此領域中最熱門的工具。其中之一是 Jupyter Notebooks ,您可以在其中找到資料科學演算法與程式庫的互動式逐步導覽。
另一個是 Anaconda ,這是一個資料科學家分享其工作成果的平台。這是另一個開始資料科學之旅時,尋找指南和說明的絕佳地方。
在 Python 中, pandas 可能是資料科學最重要的程式庫。資料科學家的一項重要任務是清理您將使用的資料,而 pandas 可讓這項工作變得更加輕鬆。它也提供一套工具,可協助處理和分析資料。
AI 和資料科學的熱門程度只會持續攀升,因此現在開始學習這些工具是絕佳選擇!
與大多數其他科技相關主題一樣,透過觀看 YouTube 上的教學影片,就能輕鬆且免費地學習 Python。我們正處於免費線上教學內容的黃金時代。Brad Traversy 是該領域的領軍人物,但可供選擇的講師幾乎不勝枚舉。
了解基本概念後,請嘗試透過一些練習來測試您的知識。這裡也有許多選項。Exercism 是程式設計人員精進技能的絕佳資源。Exercism 提供有導師指導的針對性挑戰,以及透過命令列進行的趣味測試。
如果您想更深入探索資料科學,不妨試試 Kaggle 。大多數線上資料科學家都極力推崇此平台,視其為首要資源。
使用 GitHub 上的 Python 如何?雖然有許多可用來學習 Python 的資源,例如線上參考書籍、影片教學和網站,開發人員也可以將 GitHub 視為學習 Python 的可靠來源。
最後,長遠來看,學習任何程式設計語言的最佳方式,就是用它打造有意義的成果。嘗試建立網頁爬蟲程式、簡易 API 或自動化指令碼!
希望本指南已釐清您對這款出色程式語言的疑問。無論您想踏入資料科學領域、執行可擴充的 Web 伺服器,或只是喜歡撰寫小型指令碼,Python 都能滿足您的需求。
若要深入瞭解開發相關資訊,請參閱我們的部落格。