作者 | Rizel Scarlett
譯者 | 卞安? ? ? ?責編 |?王子彧
(資料圖片)
出品 | CSDN(ID:CSDNnews)
有什么編程語言能夠在誕生三十年后,仍然保持持續(xù)的流行?
如果你能想到 Python,那么恭喜你,答對了。在 2022 年十月的報告中,我們發(fā)現(xiàn) Python 仍然是 GitHub 上第二大最常用的編程語言。有趣的是, Python 的使用量同比增長了 22% 以上,2022 年, GitHub 上有超過400萬的開發(fā)者在使用它。
在本文中,我們將深入介紹 Python 的歷史,特點和用法,并試圖回答為什么在 20 世紀 80 年代構思的程序語言能夠繼續(xù)占開發(fā)的主導地位。除此之外,我們還將為有經(jīng)驗的?Python?開發(fā)人員提供一些有用的技巧和技巧。
什么是 Python?
Python 是一種高級的可解釋的編程語言,Python 的語法非常簡單,這使它易于閱讀,而且對用戶和初學者都非常友好。Python 最初是為了滿足作者吉多·范羅蘇姆想要設計一種使用簡單、表述美觀的編程語言而構建的,它于 1991 年首次向世界發(fā)布。
有趣的是,原本想要表述“美觀”的這種編程語言之所以選中單詞 Python(大蟒蛇)作為該編程語言的名字,跟英國 20 世紀 70 年代首播的一檔電視喜劇《蒙提·派森的飛行馬戲團》( Monty Python"s Flying Circus )有關。
Python 語言自誕生以來,已經(jīng)廣泛適用于開發(fā)人員、數(shù)據(jù)科學家、研究人員等領域。你可能會問,從哪里看出 Python 是簡單而美觀的呢?下面我們來做一個對比:
通常作為一個入門示例,每個學編程的小白都會寫下這個案例:
Python
而如果使用?Java,你將不得不多寫許多行:
Java
由于 Python 是一種通用語言,它可以在各種應用程序中使用,而且“簡單易用”的特點使得它成為用于自動化任務、構建網(wǎng)站或軟件和分析數(shù)據(jù)的優(yōu)秀語言。Python 還有其他幾個特性,使它在開發(fā)人員和工程師中很受歡迎。這些包括:
易于閱讀:
Python 代碼使用英語關鍵字而不是標點符號,它的換行符有助于定義代碼塊。這意味著您可以輕松的通過查看代碼來了解代碼的設計目的;
代碼開源:您可以下載源代碼,修改它,并隨意使用它;
跨平臺:有些語言需要您修改代碼以適應不同的平臺上運行,但 Python 作為一種跨平臺語言,您可以在任何操作系統(tǒng)上運行相同的代碼,只要它安裝了Python 解釋器;
它是可擴展的:Python 代碼可以用其他語言(如 C++)編寫,用戶可以在 Python 解釋器中添加底層模塊,以定制和優(yōu)化他們的工具;
具有一個強大的標準庫:這個庫可供任何人訪問,這意味著用戶不必為每個函數(shù)編寫代碼,而是通過訪問內置的模塊以幫助解決日常編程中的問題。
Python 通常用于什么?
Python 幾乎可以用于任何事情,從網(wǎng)絡和軟件開發(fā)到機器學習和人工智能(AI)。下面我們來看一個最常見的用例。
如果你運行它,你將會看到一些笑話,通常 Python 工程師無聊時會用來笑一笑。
言歸正傳,下面我們從一些領域來對 Python 的現(xiàn)狀做介紹:
1.Web 和軟件開發(fā)領域
Python 是一種用于 Web 和軟件開發(fā)的流行語言,因為您可以在保證簡潔、可讀的代碼基礎上創(chuàng)建復雜的多協(xié)議的應用程序。事實上,一些最流行的應用程序都是用 Python 構建的。此外,Python 的開源社區(qū)為開發(fā)人員提供了大量的可重用代碼、框架和支持。比如 Django,就是由一群經(jīng)驗豐富的開發(fā)人員設計的最常用的 Python 框架之一,旨在幫助其他人高效的進行應用程序的開發(fā),解決可能阻礙他們推進項目的一些常見問題。
2.任務自動化
使用 Python 的一個重要好處是它能夠自動執(zhí)行一些流程化或者是重復的任務。使用 Python,您可以學習如何通過使用內置模塊或從其健壯的庫中預先編寫的代碼來實現(xiàn)任何事情的自動化?;蛘吣部梢跃帉懽约旱淖远x腳本來執(zhí)行特定的操作。例如,您可以使用 “smtplib” 模塊輕松地自動發(fā)送電子郵件,或使用 “shutil” 模塊復制文件。Python 還擁有一組健壯的測試框架,這使它成為測試自動化的優(yōu)秀語言。像 Pytest、Behave 和 Robot 這樣的框架一樣允許開發(fā)人員編寫簡單而有效的測試,以確保其構建的質量。
3.機器學習和大數(shù)據(jù)
這里有一個有趣的事實:Python 是數(shù)據(jù)科學和研究的首選語言。由于它的語法易于理解和適應性強,因此,幾乎沒有開發(fā)經(jīng)驗的人可以很容易地學習 Python,并使用它來操作數(shù)據(jù),用于研究、報告、預測或回歸分析等等。對于數(shù)據(jù)科學家來說,收集和解析數(shù)據(jù)是一項耗時的任務。而? Python 作為訓練機器學習(ML)模型的主要語言之一,通過特定的算法,可以分析和識別這些模型數(shù)據(jù)中的特征,從而根據(jù)這些數(shù)據(jù)做出預測或決策。還可以基于以前的數(shù)據(jù)集進行不斷優(yōu)化調整,以應對新的變量。訓練ML模型的數(shù)據(jù)科學家和開發(fā)人員經(jīng)常使用一些庫,如 NumPy、Pandas 和 Matplotlib 等完成自動化的數(shù)據(jù)清洗、轉換和可視化等功能。
4.金融或財務分析
與 Python 如何幫助數(shù)據(jù)科學家處理大型數(shù)據(jù)集類似, Python 在金融業(yè)被廣泛用于快速執(zhí)行復雜的計算。股票市場會產(chǎn)生大量的數(shù)據(jù), Python 可以用來導入有關股票價格的數(shù)據(jù),并通過算法生成策略來識別交易機會。該語言還可用于投資組合優(yōu)化、風險管理、財務建模和可視化、加密貨幣分析,甚至欺詐檢測。
5.人工智能
Python 也可以在一些最復雜的人工智能 (AI) 技術中用到,它實際上是人工智能的首選語言之一。Python 的簡潔和可讀代碼允許開發(fā)人員創(chuàng)建一致、可靠的系統(tǒng),它龐大的庫提供了許多像 PyBrain 這樣的框架,它為開發(fā)人員提供了機器學習任務強大的算法。此外, Python 的可視化功能可以幫助將這些 AI 或 ML 的大型數(shù)據(jù)集轉換為可理解的圖形或報告。有趣的是,人工智能研究實驗室 OpenAI 正是利用 Python 框架 Pytorch 作為他們的深度學習的標準框架,而且用來訓練它的人工智能系統(tǒng)。
為什么Python如此流行?
除了相對簡單的學習之外,Python 繼續(xù)持續(xù)受歡迎還有其他一些原因。包括:
生產(chǎn)效率高:與 C++ 等其他更復雜的編程語言相比,Python 的語法允許用戶用更少的時間做更多的事情,并減少編寫相同行代碼的時間和精力。
它有一個廣泛的、具有支持性的用戶社區(qū):即使是最好的開發(fā)人員也會遇到問題,用戶社區(qū)也就成為了一種寶貴的資源聚集地。Python 有一個龐大的社區(qū),它提供文檔、教程、技巧和技巧來掌握該語言。例如,GitHub 上的Python 社區(qū)提供了從該語言最新版本的信息到 Bug 報告和更新說明的所有信息。
教育界認可:Python 已經(jīng)成為教育界的首選編程語言,一些學生甚至在小學就遇到了 Python。(信不信由你,有一些兒童畫書是專門寫給 Python的。)雖然計算機科學專業(yè)的學生經(jīng)常被教授 Python,但它的使用早已經(jīng)超越了單一學科,擴展到 STEM 和學術研究的其他領域。例如,Python 可以用于求解微分方程、執(zhí)行統(tǒng)計分析、模擬和跟蹤粒子擴散等等。
它有很高的企業(yè)需求:由于其在開發(fā)和數(shù)據(jù)分析工作中的廣泛適用性,學習和了解 Python 通常被認為是求職者的必備技能。根據(jù)知名招聘機構的情況看,Python 語言是 2022 年全球招聘人員需求排在第三的編程語言。
寫在最后
Python 無處不在,它已經(jīng)被廣泛用于構建大量的技術、網(wǎng)站,甚至是大多數(shù)人每天都會遇到的系統(tǒng)。它提供的技術,從你最喜歡的視頻流服務到機器學習算法,甚至幫助你進行加密貨幣交易。這里舉一個更廣泛的例子,NASA 也在使用 Python 對復雜的詹姆斯·韋伯太空望遠鏡的數(shù)據(jù)進行分析,這使它成為為數(shù)不多的幾種應用于世界之外項目的編程語言之一。
關鍵詞: