python入門教程系列——python簡介
Python是著名的“龜叔”Guido van Rossum在1989年聖誕節期間,為了打發無聊的聖誕節而編寫的一個程式語言。
現在,全世界差不多有600多種程式語言,但流行的程式語言也就那麼20來種。如果你聽說過TIOBE排行榜,你就能知道程式語言的大致流行程度。這是最近10年最常用的10種程式語言的變化圖:
總的來說,這幾種程式語言各有千秋。C語言是可以用來編寫作業系統的貼近硬體的語言,所以,C語言適合開發那些追求執行速度、充分發揮硬體效能的程式。而Python是用來編寫應用程式的高階程式語言。
當你用一種語言開始作真正的軟體開發時,你除了編寫程式碼外,還需要很多基本的已經寫好的現成的東西,來幫助你加快開發進度。比如說,要編寫一個電子郵件客戶端,如果先從最底層開始編寫網路協議相關的程式碼,那估計一年半載也開發不出來。高階程式語言通常都會提供一個比較完善的基礎程式碼庫,讓你能直接呼叫,比如,針對電子郵件協議的SMTP庫,針對桌面環境的GUI庫,在這些已有的程式碼庫的基礎上開發,一個電子郵件客戶端幾天就能開發出來。
Python就為我們提供了非常完善的基礎程式碼庫,覆蓋了網路、檔案、GUI、資料庫、文字等大量內容,被形象地稱作“內建電池(batteries included)”。用Python開發,許多功能不必從零編寫,直接使用現成的即可。
除了內建的庫外,Python還有大量的第三方庫,也就是別人開發的,供你直接使用的東西。當然,如果你開發的程式碼通過很好的封裝,也可以作為第三方庫給別人使用。
許多大型網站就是用Python開發的,例如YouTube、Instagram,還有國內的豆瓣。很多大公司,包括Google、Yahoo等,甚至NASA(美國航空航天局)都大量地使用Python。
龜叔給Python的定位是“優雅”、“明確”、“簡單”,所以Python程式看上去總是簡單易懂,初學者學Python,不但入門容易,而且將來深入下去,可以編寫那些非常非常複雜的程式。
總的來說,Python的哲學就是簡單優雅,儘量寫容易看明白的程式碼,儘量寫少的程式碼。如果一個資深程式設計師向你炫耀他寫的晦澀難懂、動不動就幾萬行的程式碼,你可以盡情地嘲笑他。
那Python適合開發哪些型別的應用呢?
首選是網路應用,包括網站、後臺服務等等;
其次是許多日常需要的小工具,包括系統管理員需要的指令碼任務等等;
另外就是把其他語言開發的程式再包裝起來,方便使用。
最後說說Python的缺點。
任何程式語言都有缺點,Python也不例外。優點說過了,那Python有哪些缺點呢?
第一個缺點就是執行速度慢,和C程式相比非常慢,因為Python是解釋型語言,你的程式碼在執行時會一行一行地翻譯成CPU能理解的機器碼,這個翻譯過程非常耗時,所以很慢。而C程式是執行前直接編譯成CPU能執行的機器碼,所以非常快。
但是大量的應用程式不需要這麼快的執行速度,因為使用者根本感覺不出來。例如開發一個下載MP3的網路應用程式,C程式的執行時間需要0.001秒,而Python程式的執行時間需要0.1秒,慢了100倍,但由於網路更慢,需要等待1秒,你想,使用者能感覺到1.001秒和1.1秒的區別嗎?這就好比F1賽車和普通的計程車在北京三環路上行駛的道理一樣,雖然F1賽車理論時速高達400公里,但由於三環路堵車的時速只有20公里,因此,作為乘客,你感覺的時速永遠是20公里。
第二個缺點就是程式碼不能加密。如果要釋出你的Python程式,實際上就是釋出原始碼,這一點跟C語言不同,C語言不用釋出原始碼,只需要把編譯後的機器碼(也就是你在Windows上常見的xxx.exe檔案)釋出出去。要從機器碼反推出C程式碼是不可能的,所以,凡是編譯型的語言,都沒有這個問題,而解釋型的語言,則必須把原始碼釋出出去。
這個缺點僅限於你要編寫的軟體需要賣給別人掙錢的時候。好訊息是目前的網際網路時代,靠賣軟體授權的商業模式越來越少了,靠網站和移動應用賣服務的模式越來越多了,後一種模式不需要把原始碼給別人。
再說了,現在如火如荼的開源運動和網際網路自由開放的精神是一致的,網際網路上有無數非常優秀的像Linux一樣的開原始碼,我們千萬不要高估自己寫的程式碼真的有非常大的“商業價值”。那些大公司的程式碼不願意開放的更重要的原因是程式碼寫得太爛了,一旦開源,就沒人敢用他們的產品了。
當然,Python還有其他若干小缺點,請自行忽略,就不一一列舉了。
感覺本文內容不錯,讀後有收穫?
相關推薦
python入門教程系列——python簡介
Python是著名的“龜叔”Guido van Rossum在1989年聖誕節期間,為了打發無聊的聖誕節而編寫的一個程式語言。 現在,全世界差不多有600多種程式語言,但流行的程式語言也就那麼20來種。如果你聽說過TIOBE排行榜,你就能知道程式語言的大致流行程度。這是最近
python入門教程系列——python字典dict和幾何set
dict Python內建了字典:dict的支援,dict全稱dictionary,在其他語言中也稱為map,使用鍵-值(key-value)儲存,具有極快的查詢速度。 舉個例子,假設要根據同學的名字查詢對應的成績,如果用list實現,需要兩個list: names =
python入門教程系列——資料型別和變數
資料型別 計算機顧名思義就是可以做數學計算的機器,因此,計算機程式理所當然地可以處理各種數值。但是,計算機能處理的遠不止數值,還可以處理文字、圖形、音訊、視訊、網頁等各種各樣的資料,不同的資料,需要定義不同的資料型別。在Python中,能夠直接處理的資料型別有以下幾種:
中文程式碼示例視訊演示Python入門教程第三章 簡介Python
知乎原鏈 Python 3.6.5官方入門教程中示例程式碼漢化後演示 對應線上文件: 3. An Informal Introduction to Python 不知如何合集, 請指教. 中文程式碼示例Python入門教程 3.1.1_嗶哩嗶哩 (゜-゜)つロ 乾杯~-bili
Python基礎入門教程,Python學習路線圖
第一天 字符 語法 知識 國內 排序 inux 跟著 最好的 給大家整理的這套python學習路線圖,按照此教程一步步的學習來,肯定會對python有更深刻的認識。或許可以喜歡上python這個易學,精簡,開源的語言。此套教程,不但有視頻教程,還有源碼分享,讓大家能真正
python入門教程學習筆記#2
tab 下載 body 中文 穩定 出現 包含 圖1 ret 2.1 python3.6 工具使用 運行python 自帶的idle後,輸入python命令,如print(‘hello world‘),回車後輸出 hello world 其中mac系統會出現一段warn
python入門教程學習筆記#1
ext game 2.7 功能 sublime wxpython 程序 免費 圖形界面 下載地址:https://www.python.org/,版本可選擇3.6或2.7 1.2 編譯環境pycharm 下載地址:https://www.jetbrains.com/p
Python 入門教程
動態 erl inline add ng- 程序語言 mage 便是 2.0 Python 入門教程 Python是一種解釋型、面向對象、動態數據類型的高級程序設計語言。 Python由Guido van Rossum於1989年底發明,第一個公開發行版發行於1991年。
python入門教程(零)
輸入 ctrl+ true 習慣 保存 def block 安裝 xxx (本文針對Windows) Python是什麽?是一種編程語言。編程語言是什麽?就是和機器說話的方式。編譯器和解釋器好比翻譯,把你的話翻成機器聽得懂的。但是這些翻譯不怎麽智能(雖然也有高下),你必
Python入門教程(二)
ack 布爾代數 記事本 成對 .py 語法錯誤 是什麽 ech eclips 今天講編程思維。 可能這對初次接觸編程的人有用——我不是不想切入正題,我只是想強調根本沒什麽正題,我可能在其他文章裏提過這一點。“編程語言就是語法糖”,可能你不知道什麽是語法糖,但是知道的
Python入門教程(三)
循環 三個參數 normal 編程 list bili lan 函數返回 容易 按理說,這篇是收尾了。可能有一點術語,但大都是顧名思義的。重要概念【類】在第二個標題下說明。函數式編程(縮寫:FP) 如果對此有興趣,可以看scheme視頻教程(SICP公開課)(sche
Python入門教程
條件判斷 浮點數 基礎 種類 新的 環境變量 bsp 學習java 就是 IT行業的技術更新特別快,我們不能一直停留在老技術上而不去接收新的知識,其實作為一個程序員,學習知識的能力比起掌握的知識更重要。Python也是一個目前很火的語言,作為java後端的我,也必須在工作之
Week1-Python入門教程(後續完善中)
常用 弱類型 字符串 程序 ron python2 擴展性 回車 8bit 一、Python是一門什麽樣的語言:編程語言分類: 編譯型: 解釋型:執行慢; 動態語言:在運行期間檢查數據類型,不用給任何變量指定數據類型; 靜態語言:在編譯期間檢查數據類型;
python入門教程-張晨光-專題視訊課程
python入門教程—374人已學習 課程介紹 Python, 是一種面向物件的解釋型計算機程式設計語言,由荷蘭人Guido van Rossum於1989年發明,第一個公開發行版發
Python入門教程--介紹、基本語法(二)
在上一篇文章中,我們介紹了Python的一些基本語法,現在我們繼續介紹剩下的Python基本語法。檢視上一篇文章請點選:https://www.cnblogs.com/dustman/p/9871938.html 字元運算子 字串連線就像對數字進行加減一樣,兩個字串也可以通過加號 + 進行連線產生新的字串
python入門教程,格式化輸出,檔案物件
Python格式化輸出: Python的字串格式化有兩種方式: 百分號方式、format方式 百分號的方式相對來說比較老,而format方式則是比較先進的方式,企圖替換古老的方式,目前兩者並存。[PEP-3101] (1)百分號格式化 %[(name)][flags][width][.
python入門教程,函式,lambda,遞迴
一、函式 函式的基礎概念: 函式是python為了程式碼最大程度地重用和最小化程式碼冗餘而提供的基本結構 函式是一種設計工具,它能讓程式設計師將複雜的系統分解為可管理的部件 函式用於將相關功能打包並引數化 在python中可以建立4種函式 (1)全域性函式:定義在模組 (2)區域性函式:
這個Python入門教程是國外13歲小孩寫的,現在他已經年薪百萬!
你曾經想知道計算機是如何工作的嗎?儘管我們不能在一篇文章裡面教會你所有的東西,但是可以通過學習如何寫出你自己的程式來獲得一個良好的開端。在這篇Python教程中,你將會學到計算機程式設計的基礎知識,使用對新手來說最棒的程式語言之一。 什麼是程式設計? 當然在學習Python的道路上肯定會困難
python入門教程到高薪就業要多久?10年經驗教你如何快速學!
很多人想學Python,因為高薪,而且也是程式語言裡面最簡單的一種,但是不知道該如何入手學習,首先我們從這裡看下幾個基本理論知識:如果你能堅持看完三條說明你真心想學好 Python! 1.python檔案字尾名: .py 是Python的原始碼檔案,由Py
【轉】python入門教程
這是一篇簡短的關於python程式設計語言的入門教程,原文在這裡,翻著詞典翻譯了來! 這是一份對程式設計藝術的簡短介紹,其中的例子是用python寫成的。(如果你已經知道了該如何程式設計,但是想簡單瞭解一下python,你可以查閱我的另一篇文章Instant Python