圖解python | 簡介

ShowMeAI發表於2022-02-21

ShowMeAI研究中心

作者:韓信子@ShowMeAI
教程地址http://www.showmeai.tech/tutorials/56
本文地址http://www.showmeai.tech/article-detail/61
宣告:版權所有,轉載請聯絡平臺與作者並註明出處

引言

本系列教程 展開講解Python程式語言,Python在誕生之初,因其運轉功率低,不支援多核和併發,一直不溫不火,甚至不為大多數人所致。

隨著技術革新,物理硬體功能不斷提高,而軟體的複雜性也不斷增大,開發效率越來越被企業重視;同時在大資料和科學計算領域,需要快速分析與驗證,開發便捷性和速度非常重要。因此很多人意識到開發效率比機器效率更為重要,Python逐漸得到越來越多開發者的親睞了。

2012-2014年,雲端計算升溫,大量創業公司和網際網路巨頭擠進雲端計算領域,而最著名的雲核算開源渠道OpenStack就是基於 Python 開發的。而近年的大資料與人工智慧,機器學習/深度學習,整個生態最活躍支援度最高的程式語言也是Python。

當今Python已經成為網際網路最熱門的程式語言之一。在「Top 10 的程式語言走勢圖」可以看到,Python迅速進入前三位,而且還一度成為了最受歡迎的語言。

Top10 程式語言的走勢圖

內容簡介

本篇將對 Python 進行簡要的介紹,通過閱讀本篇內容您將瞭解到:

  • Python 簡要介紹;
  • Python 發展歷史;
  • Python 特點特性;
  • Python 應用場景;

人生苦短,我用Python

Python簡介

Python 是一個高層次的結合瞭解釋性、編譯性、互動性和麵向物件的指令碼語言。

Python 的設計具有很強的可讀性,相比其他語言經常使用英文關鍵字,其他語言的一些標點符號,它具有比其他語言更有特色語法結構(請參考後續教程python基礎語法)。

  • Python 是一種解釋型語言: 這意味著開發過程中沒有了編譯這個環節。類似於PHP和Perl語言。
  • Python 是互動式語言: 這意味著,您可以在一個 Python 提示符 >>> 後直接執行程式碼。
  • Python 是面嚮物件語言: 這意味著Python支援物件導向的風格或程式碼封裝在物件的程式設計技術。
  • Python 是初學者的語言:Python 對初級程式設計師而言,是一種偉大的語言,它支援廣泛的應用程式開發,從簡單的文書處理到 WWW 瀏覽器再到遊戲。

Python發展歷史

Python是由Guido van Rossum(Python之父,阿姆斯特丹大學數學和計算機碩士)在八十年代末和九十年代初,在荷蘭國家數學和電腦科學研究所設計出來的。

Python 本身也是由諸多其他語言發展而來的,這包括 ABC、Modula-3、C、C++、Algol-68、SmallTalk、Unix shell 和其他的指令碼語言等等。

  • Python1.0版本於1994年1月釋出,這個版本的主要新功能是lambda, map, filter和reduce。
  • 2000年10月份,Python2.0釋出了。這個版本的主要新功能是記憶體管理和迴圈檢測垃圾收集器以及對Unicode的支援。然而,尤為重要的變化是開發的流程的改變,Python此時有了一個更透明的社群。
  • 2008年的12月份,Python3.0釋出了。Python3.x不向後相容Python2.x。

Python2.7 是最後一個 Python2.x 版本,它除了支援Python 2.x語法外,還支援部分Python 3.1語法。

Python特點

  • 1.易於學習:Python有相對較少的關鍵字,結構簡單,和一個明確定義的語法,學習起來更加簡單。
  • 2.易於閱讀:Python程式碼定義的更清晰。
  • 3.易於維護:Python的成功在於它的原始碼是相當容易維護的。
  • 4.一個廣泛的標準庫:Python的最大的優勢之一是豐富的庫,跨平臺的,在UNIX,Windows和Macintosh相容很好。
  • 5.互動模式:互動模式的支援,您可以從終端輸入執行程式碼並獲得結果的語言,互動的測試和除錯程式碼片斷。
  • 6.可移植:基於其開放原始碼的特性,Python已經被移植(也就是使其工作)到許多平臺。
  • 7.可擴充套件:如果你需要一段執行很快的關鍵程式碼,或者是想要編寫一些不願開放的演算法,你可以使用C或C++完成那部分程式,然後從你的Python程式中呼叫。
  • 8.資料庫:Python提供所有主要的商業資料庫的介面。
  • 9.GUI程式設計:Python支援GUI可以建立和移植到許多系統呼叫。
  • 10.可嵌入: 你可以將Python嵌入到C/C++程式,讓你的程式的使用者獲得"指令碼化"的能力。

Python應用場景

Python的8種主要應用場景

  • 常規軟體開發

Python支援函數語言程式設計和OOP物件導向程式設計,能夠承擔任何種類軟體的開發工作,因此常規的軟體開發、指令碼編寫、網路程式設計等都屬於標配能力。

  • 科學計算

隨著NumPy,SciPy,Matplotlib,Enthoughtlibrarys等眾多程式庫的開發,Python越來越適合於做科學計算、繪製高質量的2D和3D影像。

和科學計算領域最流行的商業軟體Matlab相比,Python是一門通用的程式設計語言,比Matlab所採用的指令碼語言的應用範圍更廣泛,有更多的程式庫的支援。雖然Matlab中的許多高階功能和toolbox目前還是無法替代的,不過在日常的科研開發之中仍然有很多的工作是可以用Python代勞的。

  • 自動化運維

這幾乎是Python應用的自留地,作為運維工程師首選的程式語言,Python在自動化運維方面已經深入人心,比如Saltstack和Ansible都是大名鼎鼎的自動化平臺。

  • 雲端計算

開源雲端計算解決方案OpenStack就是基於Python開發的,搞雲端計算的同學都懂的。

  • WEB開發

基於Python的Web開發框架不要太多,比如耳熟能詳的Django,還有Tornado,Flask。其中的Python+Django架構,應用範圍非常廣,開發速度非常快,學習門檻也很低,能夠幫助你快速的搭建起可用的WEB服務。

  • 網路爬蟲

也稱網路蜘蛛,是大資料行業獲取資料的核心工具。沒有網路爬蟲自動地、不分晝夜地、高智慧地在網際網路上爬取免費的資料,那些大資料相關的公司恐怕要少四分之三。能夠編寫網路爬蟲的程式語言有不少,但Python絕對是其中的主流之一,其Scripy爬蟲框架應用非常廣泛。

  • 資料分析

在大量資料的基礎上,結合科學計算、機器學習等技術,對資料進行清洗、去重、規格化和針對性的分析是大資料行業的基石。Python是資料分析的主流語言之一。

  • 人工智慧

Python在人工智慧大範疇領域內的機器學習、神經網路、深度學習等方面都是主流的程式語言,得到廣泛的支援和應用。

資料與程式碼下載

本教程系列的程式碼可以在ShowMeAI對應的github中下載,可本地python環境執行,也可以直接藉助google colab一鍵執行與互動操作學習哦!

本教程系列涉及的Python速查表可以在以下地址下載獲取:

擴充參考資料

ShowMeAI相關文章推薦

ShowMeAI系列教程推薦

showmeai.tech

相關文章