1.重點知識
2.Python 語言介紹
2.1.Python 在主要領域的應用前景
- Web 開發
- 最火的 Web 框架 Django
- 支持異步、高併發的 Tornado
- 短小精悍的 flask 、bottle
- 網絡編程
- 支持高併發的 Twisted 網絡框架
- Py3 引入的 asyncio 使異步編程變的很是簡單
- 爬蟲,Python 幾乎是霸主地位,衆多的框架、庫,想爬啥就爬啥
- Scrapy
- Request
- Beautiful Soap
- urllib
- 雲計算:目前最火、最知名的雲計算框架就是 OpenStack,Python 的火爆,很大程度上要歸功於雲計算
- 人工智能:誰會成爲 AI 和大數據時代的第一開發語言?如今已是一個不須要爭論的問題。若是說三年前,Matlab、Scala、R、Java 和 Python 都各有機會、局面尚且不清晰,那麼三年後的今天,趨勢已經很是明確了,特別是 Facebook 開源了 PyTorch 後,Python 做爲 AI 時代的頭牌語言的地位已經確立,將來的懸念僅僅是誰能坐穩第2的位置。
- 自動化運維:問問中國每一個韻味人員必須會的語言是什麼?相信他們會給你一個相同的答案:Python。
- 金融分析:量化交易,金融分析,在金融工程領域,Python不但在用,且用的最多,並且重要性逐年提升。緣由:做爲動態語言的Python,語言結構清晰簡單,庫豐富,成熟穩定,科學計算和統計分析都很牛逼,生產效率遠遠高於c,c++,java,尤爲擅長策略回測。
- 科學計算:1997年開始,NASA 就在大量使用 Python 進行各類複雜的科學計算,隨着 NumPy、SciPy、Matplotlib、Enthought librarys 等衆多程序庫的開發,使得Python 愈來愈適合於科學計算、繪製高質量的 2D、3D 圖像。和科學計算領域最流行的商業軟件 Matlab 相比,Python 是一門通用的程序設計語言,比 Matlab 所採用的腳本語言的應用範圍更普遍。
- 遊戲開發:在網絡遊戲開發中 Python 也有不少應用。項目 Lua、C++,Python 比 Lua 具有更高姐的抽象能力,能夠用更少的代碼描述遊戲業務邏輯,並且 Python 更適合做爲一種 Host 語言,即程序的入口點在 Python 那一端會比較好,而後用 C、C++ 在必要的時候寫一些擴展。Python 很是適合編寫 1萬行以上的項目,並且可以很好的把網絡遊戲項目控制在 10萬行代碼之內。知名的遊戲"文明"就是用 Python 寫的。
2.2.Python 在機構、行業巨頭公司的應用
- Google:Google App Engine、code.google.com、Google Earth、Google 爬蟲、Google 廣告等項目都在大量使用 Python。
- CIA:美國中情局的網站就是用 Python 開發的。
- NASA:美國航天局大量使用 Python 進行數據分析和運算。
- Youtube:全球最大的視頻網站也是用 Python 開發的。
- Dropbox:美國最大的在線雲存儲網站所有用 Python 實現,網站天天處理 10億個文件的上傳和下載。
- Instagram:美國最大的圖片分享社交網站所有用 Python 開發,天天超過 3千萬張照片被分享。
- Facebook:大量的基礎庫均經過 Python 開發
- Redhat:全球最流行的 Linux 發行版本中的 yum 包管理工具就是用 Python 開發的
- 豆瓣:該公司的全部業務都是用 Python 開發的
- 知乎:國內最大的問答社區也是用 Python 開發的
- 春雨醫生:國內知名的在線醫療網站也是用 Python 開發的
- 除此以外,搜狐、金山、騰訊、盛大、網易、百度、阿里、淘寶、土豆、新浪、果殼等公司都在使用 Python 處理各類各樣的事情
3.Python 的發展史
- 1989年,龜叔開始寫 Python 語言的編譯器。
- 1991年,第一個 Python 編譯器誕生。它使用 C 語言實現的,並可以調用 C 語言的庫文件。從一誕生,Python 就具備了累、函數、異常處理等功能,包含列表和字典在內的核心數據類型、以模塊爲基礎的擴展系統。
- 1994年1月,Python 1.0 增長了 lambda、map、filter、reduce。
- 1999年,高度面向對象的 Web 開發框架 Zope 1 正式發佈。
- 2000年10月16日,Python 2.0 發佈,加入了內存回收機制,構成了如今 Python 語言框架的基礎。
- 2004年11月30日,Python 2.4 發佈。同年,最流行的 Web 框架 Django 誕生。
- 2006年9月19日,Python 2.5 發佈。
- 2008年10月1日,Python 2.6 發佈。
- 2008年12月3日,Python 3.0 發佈。
- 2010年7月3日,Python 2.7 發佈,兼容 2 和 3 的語法。
- 2014年11月,發佈聲明 Pythn 2.7 維護到 2020年終止,而且不會再發布 2.8 版本,薪的特性都會追加在 3.4 之後的版本中。
題外話:爲何 2008年發佈了 3.0 版本,2010年反而又發佈了 2.7 版本?編程
這是由於 Python 3.0 版本不向下兼容 2.x 的語法,致使你們都拒絕升級 3.0,因此官方無奈只能經過發佈 2.7版原本過渡。flask
4.Python 的發展前景如何
知乎上有篇文章《Python 將來 10年的發展前景》,能夠看一下 Alex 的回答。網絡
5.Python 有哪些種類
- 咱們如今知道 Python 是一門解釋型語言,代碼祥雲縣,必須經過解釋器執行,Python 解釋器自己也能夠看做是一個程序,那麼解釋器是用什麼語言開發的呢?答案是不少種語言。what?由於 Python 有不少種解釋器,分別基於不一樣的語言開發,每一個解釋器特色不一樣,可是都能正常運行咱們的 Python 代碼,下面分別說明:
CPython
- 官方版本解釋器,使用 C 語言開發,在命令行下執行 python 就是啓動 C Python 解釋器。
IPython
- 它是基於 CPython 的交互式解釋器。也就是說在交互方式上有加強,但在執行 Python 代碼的功能和 CPython 徹底同樣。
- CPython 使用
>>>
做爲提示符;IPython 使用ln[n]:
做爲提示符,n
爲序號。
PyPy
- PyPy 特色是執行速度快,它採用 JIT 技術,對 Python 代碼進行動態編譯(注意不是解釋),因此能夠顯著提升 Python 代碼的執行速度。
- 絕大部份 Python 代碼均可以在 PyPy 下運行,可是 PyPy 和 CPython 有些不一樣,這致使了相同的 Python 代碼在 2種解釋器下執行,可能會獲得不一樣的結果。
- 因此,若是你的代碼要用 PyPy 執行,就須要瞭解 PyPy 和 CPython 的不一樣。
Jython
- 它是運行在 Java 平臺下的 Python 解釋器,能夠直接把 Python 代碼編譯成 Java 字節碼執行。
IronPython
- IronPython 和 Jython 相似,只不過 IronPython 是運行在微軟 .NET 平臺上的 Python 解釋器,能夠直接把 Python 代碼編譯成 .NET 字節碼。
6.選擇:Python 2 仍是 Python 3?