Python翻譯成漢語是蟒蛇的意思,並且Python的logo也是兩條纏繞在一起的蟒蛇的樣子,然而Python語言和蟒蛇實際上並沒有一毛錢關係。
Python語言是由荷蘭程式設計師Guido van Rossum,江湖人稱「龜叔」,獨立開發完成初版的。「龜叔」曾供職於google,現任職於dropbox 。1989年聖誕節期間,在阿姆斯特丹,為了打發聖誕節的無趣,決心開發一個新的腳本解釋語言,作為ABC語言的一種繼承,然後他就這麼做了,並實現了(大神的能力)。之所以選中Python作為該程式語言的名字,是因為他是一個叫Monty Python喜劇團體的愛好者,其本意並不是想選條蟒蛇。
Python語言的特點
1、簡單易學、明確優雅、開發速度快
簡單易學:與C和Java比,Python的學習成本和難度曲線不是低一點,更適合新手入門,自底向上的技術攀爬路線。先訂個小目標爬個小山,然後再往更高的山峰前進。而不像C和JAVA光語言學習本身,對於很多人來說就像珠穆朗瑪峰一樣高不可攀。
明確優雅:Python的語法非常簡潔,代碼量少,非常容易編寫,代碼的測試、重構、維護等都非常容易。一個小小的腳本,用C可能需要1000行,用JAVA可能幾百行,但是用Python往往只需要幾十行!
開發速度快:當前網際網路企業的生命線是什麼?產品開發速度!如果你的開發速度不夠快,在你的產品推出之前別人家的產品已經上線了,你也就沒有生存空間了,這裡的真實例子數不勝數。那麼,Python的開發速度說第二沒人敢稱第一!(不歡迎辯論_)
2、跨平台、可移植、可擴展、交互式、解釋型、面向對象的動態語言
跨平台:Python支持Windows、Linux和MAC os等主流作業系統。
可移植:代碼通常不需要多少改動就能移植到別的平台上使用。
可擴展:Python語言本身由C語言編寫而成的,你完全可以在Python中嵌入C,從而提高代碼的運行速度和效率。你也可以使用C語言重寫Python的任何模塊,從根本上改寫Python,PyPy就是這麼乾的。
交互式:Python提供很好的人機互動介面,比如IDLE和IPython。可以從終端輸入執行代碼並獲得結果,互動的測試和調試代碼片斷。
解釋型:Python語言在執行過程中由解釋器逐行分析,逐行運行並輸出結果。
面向對象:Python語言具備所有的面向對象特性和功能,支持基於類的程序開發。
動態語言:在運行時可以改變其結構。例如新的函數、對象、甚至代碼可以被引進,已有的函數可以被刪除或是其他結構上的變化。動態語言非常具有活力。
3、「內置電池」,大量的標準庫和第三方庫
Python為我們提供了非常完善的基礎庫,覆蓋了系統、網絡、文件、GUI、資料庫、文本處理等方方面面,這些是隨同解釋器被默認安裝的,各平台通用,你無需安裝第三方支持就可以完成大多數工作,這一特點被形象地稱作「內置電池(batteries included)」。
在程式設計師界,有一句話叫做「不要重複造輪子」。什麼意思呢?就是說不要做重複的開發工作,如果對某個問題已經有開源的解決方案或者說第三方庫,就不要自己去開發,直接用別人的就好。不要過分迷信自己的代碼能力,要知道,能作為標準庫被Python內置,必然在可靠性和算法效率上達到了目前最高水平,能被廣泛使用的第三方庫,必然也是經受了大量的應用考驗。除非公司要求,不要自己去開發,請使用現成的庫。那些造輪子的事情,就交給世界最頂尖的那一波程式設計師去干吧,沒有極致的思維和數學能力,想創造好用的輪子是很難的。
4、開源語言,發展動力巨大
Python是基於C語言編寫的,並且使用GPL開源協議,你可以免費獲取它的原始碼,進行學習、研究甚至改進。眾人拾柴火焰高,有更多的人參與Python的開發,促使它更好的發展,被更多的應用,形成良性循環。Python為什麼會越來越火就是因為它的開放性,自由性,聚起了人氣,形成了社區,有很多人在其中做貢獻,用的人越來越多,自然就提高了市場占有率,企業、公司、廠家就不得不使用Python,提供的Python程式設計師崗位就越來越多,這就是開源的力量。
這裡附帶跟大家說一個代碼封閉的問題。Python寫的原始碼通常是不加密的,如果要發布你的Python程序,實際上就是發布原始碼,這一點跟C語言不同,C語言不用發布原始碼,只需要把編譯後的機器碼(也就是你在Windows上常見的xxx.exe文件)發布出去。要從機器碼反推出C代碼基本是不可能的,所以,凡是編譯型的語言,都沒有這個問題,而解釋型的語言,則必須把源碼發布出去。如果你不想讓別人看到或抄襲你寫的python代碼怎麼辦?使用類似py2exe的包裝工具,將python源碼轉換成一個類似於exe可執行文件的形式,但這個也不是絕對保險,只是增加了反編譯的門檻和難度,對於有經驗的人而言,一樣可以獲得你的原始碼。
你可能要問,我要通過寫代碼編軟體賣出去掙錢怎麼辦?少年!目前的網際網路時代,靠賣軟體授權的商業模式越來越少了,靠網站服務和移動應用賣服務的模式越來越多了,這種模式不需要把源碼給別人。再說了,現在如火如荼的開源運動和網際網路自由開放的精神是一致的,網際網路上有無數非常優秀的像Linux生態圈一樣的開源項目,我們千萬不要高估自己寫的代碼真的有非常大的「商業價值」。在Python的世界,開源是王道,不要糾結你的代碼被抄襲模仿,而是儘量提高自己的水平和能力,這才是立身之本。
Python的應用方向
- 1、常規軟體開發
- 2、科學計算
- 3、自動化運維
- 4、雲計算
- 5、WEB開發
- 6、網絡爬蟲
- 7、數據分析
- 8、人工智慧
Python之禪
最後,讓我們以Python的官方格言,也就是俗稱的Python之禪來結束對Python的介紹。在Python的IDLE或者交互式解釋器中,輸入import this,你就會看到下面的一段話:
The Zen of Python, by Tim Peters
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
喜歡本文的可以轉發收藏一下哦
最後:你還在到處收集視頻資源嗎?
好像大家都有一個毛病,就是到處搜集資源,雲盤裡有很多東西,但是基本是從來都不看,所以說視頻在精不在於多,我當時自學python的時候也搜集了各種視頻,這裡看看,那裡看看,學的一點都不系統,而且學了之後也找不到工作,視頻一定要最新的,python更新的快,舊的是不可以的。小編給大家分享一套2019年7月份最新的python視頻教程,共400集,帶你從入門到達手寫網絡神經的地步,
領取方式:轉發本文,然後來私信小編「python」即可免費獲取這套教程和電子書籍啦!