介紹
Python 在英語中是蟒蛇的意思,它的 logo 也是兩條蟒蛇纏繞在一起。
然而 Python 和蟒蛇實際上沒有半點關系。
Python 是由荷蘭程序員 Guido van Rossum(因為其名字的前三個字母“gui”是中文“龜”的拼音,所以江湖人稱“龜叔”)獨立開發完成初版的。
“龜叔”曾供職于 Google,現任職于 Dropbox(多寶箱)。
1989 年圣誕節期間,在阿姆斯特丹,“龜叔”為了打發圣誕節的無趣,決心開發一個新的腳本解釋語言,作為 ABC 語言的一種繼承,然后他就這么做了,并實現了(天才就是天才)。
之所以選中 Python 作為該編程語言的名字,是因為他是一個叫 Monty Python 喜劇團體的愛好者,其本意并不是想選條蟒蛇。
Python 的口號是:“人生苦短,我用 Python”。
這條口號已經被 Python 業界廣泛使用,快成了廣告詞一類的存在了。
從這個口號也可以看出 Python 簡單、易學、省心的特點。
它特別適合沒有編程經驗但需要將編程語言當作工具的人(比如算法工程師),這也是為什么 Python 能乘著人工智能的風口起飛的原因之一。
歷史
- **(1991年)Python 0.9.0:**這個版本包含了諸多基本的語言特性,如模塊、異常處理、函數以及核心數據類型(字符串、列表等)。
- **(1994年)Python 1.0:**引入了一些現在看來很基本的特性,如 lambda、map、filter 和 reduce。此時 Python 已經有了一個相對完整的語言結構。
- **(2000年)Python 2.0:**引入了重要的特性,包括垃圾回收機制和 Unicode 支持。在此之后,Python 逐漸成為一門適用于多種領域的編程語言,從 Web 開發到科學計算都有了一席之地。
- **(2008年)Python 3.0:**也被稱為 Python 3000 或簡稱為 Py3k。這個版本引入了不兼容的語法和庫變化,以提高語言的一致性和清晰度。
截止到現在的 2025 年,Python 的最新版本依然是 3.x,語法也沒有大的變化,可見其穩定性和完善性。
這樣就不用經常學習其新的語法和特性,是非常利好學習者和開發者的(此處內涵半年發布一個大版本的 Java)。
Python 源代碼遵循 GPL(GNU General Public License)協議。
這是一個開源的協議,也就是說可以免費使用和傳播它,而不用擔心版權的問題(再次內涵按人頭收費的 Oracle JDK)。
目前 Python 是由一個核心開發團隊在維護,“龜叔”屬于太上皇職位,仍然占據著至關重要的作用,指導其進展。
現狀
Python 近些年一直占據榜單的第一名,可見其熱度。
Python 是一種“膠水語言”,其本身非常簡單。
但它有非常多的擴展庫,而且這些擴展庫不是為編程開發服務的,而是為科研、數據分析、機器學習、辦公自動化等服務的。
人工智能依賴于機器學習,近些年人工智能大火,自然就帶動了 Python 的火爆。
但一定要注意,Python 不等于人工智能。
Python 之于人工智能,好比計算器之于會計師,會計師都需要使用計算器。
但計算器本身只是工具,不是技術,衡量一個會計師的水平也不會是計算器的熟練程度,而是會計的專業技能。
以我目前工作的公司為例,我們公司是做工業巡檢機器人的,其中有一個算法部門,里面基本全是數學專業的碩士,他們很多完全沒學過編程,只是工作要做人工智能才順帶學了 Python。
由此可見,人工智能需要的是數學,Python 只是用來實現數學目的的工具。
所以如果想從事人工智能的工作,應該把精力放在數學的學習上,并盡量取得碩士學位(人工智能行業對學歷要求很高,基本碩士才是入門標準)。
至于 Python,完全可以等數學這樣的專業知識學習完畢后再將其作為工具學習。
至于爬蟲,很多無良培訓機構會以爬蟲的低門檻、高收入作為 Python 的亮點進行宣傳。
但爬蟲需要掌握的知識其實很多,前后端都得會,門檻并不低。
高收入或許是事實,但風險也是同樣高的,因為爬蟲本身就是“灰色地帶”,現在的政策對爬蟲越來越嚴厲,市場也越來越小。
要是現在還一門心思做爬蟲,很可能是“面向監獄編程”了。
Python 能有今天這樣的成就,縱然與外界因素有關(比如近些年大火的人工智能),但其本身簡單易學的語法、完善的工具庫、舒適的開發體驗,都是它能把握住時代風口的重要原因。
學習 Python,并不為將其作為“飯碗”,而是將其作為“餐具”,讓我們可以更好的“吃飯”。
作為程序員,在人工智能的時代,學會 Python 注定能走得更遠。