Python為什麼執行效率低?受哪些因素影響?
與其他程式語言相比,Python具有非常獨特的優勢,語法簡單、通俗易懂、開發效率高、免費開源、簡單易學、可移植、可擴充套件,最厲害的就是它有著廣泛的第三方庫支援,可以更好的提高工作效率。具備多重優勢的同時,Python也具備一定的缺點:執行效率低,那麼導致Python執行效率低的因素是什麼?請看下文。
1.Python是動態語言
動態語言是一類在執行時可以改變其結構的語言,如新的函式、物件、程式碼可以被引入,已有的函式可以被刪除或其他結構上的變化等,該類語言更具有活性,但是不可避免的因為執行時的不確定性也影響執行效率。
2.Python是解釋執行
相比於C語言編譯性語言編寫的程式,Python是解釋執行語言,其執行過程是Python執行檔案程式時,Python直譯器將原始碼轉換為位元組碼,然後再由Python直譯器來執行這些位元組碼。其每次執行都要進行轉換成位元組碼,然後再由虛擬機器把位元組碼轉換成機器語言,最後才能在硬體上執行,與編譯性語言相比,其過程更復雜,效能肯定會受影響。
3.Python中一切都是物件
Python是一門物件導向的程式語言,其設計理念是一切皆是物件,如數字、字串、元組、列表、字典、函式、方法、類、模組等都是物件,包括程式碼,每個物件都需要維護引用計數,因此,增加了額外工作,影響了效能。
4.Python GIL
GIL是Python最為詬病的一點,因為GIL,Python中的多執行緒並不能真正的併發,即使在單執行緒,GIL也會帶來很大的效能影響,因為python每執行100個opcode就會嘗試執行緒的切換,因此,影響Python執行效率。
5.垃圾回收
Python採用標記和分代的垃圾回收策略,每次垃圾回收的時候都會中斷正在執行的程式,造成所謂的頓卡,影響執行效率。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2909884/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 為什麼python執行效率低?原來因為它!Python
- 香港伺服器ping值受哪些因素影響伺服器
- 網站的建設質量受哪些因素所影響網站
- 華納雲:伺服器租用費用受哪些因素影響?伺服器
- Python是什麼?為什麼Python受歡迎?Python
- 為什麼學習效率如此低,我很迷茫?
- 為什麼進行統計分析執行效率反而更差呢?
- python為什麼要用執行緒Python執行緒
- 哪些因素影響Java呼叫的效能?Java
- 低程式碼開發平臺為什麼那麼受歡迎
- 受盜版影響最大的行業是?行業
- 開發一套直播系統原始碼的價格主要受哪些因素影響?原始碼
- python 多執行緒為什麼雞肋?Python執行緒
- 為什麼python大資料受歡迎?Python大資料
- 伺服器穩定性受到哪些因素影響伺服器
- Python為什麼這麼受歡迎呢?python優勢Python
- 為什麼Python語言那麼受歡迎呢?Python
- 除功能升級外,直播賣貨系統未來發展還將受哪些因素影響
- python按f5為什麼不執行Python
- 為什麼Python停止執行?該如何應對?Python
- 為什麼Python受關注?Python熱門的原因!Python
- MYSQL 中 exists 語句執行效率變低MySql
- 有哪些因素會影響美國伺服器速度伺服器
- Docker 到底影響了什麼?Docker
- 伺服器的容錯性對伺服器執行有什麼影響伺服器
- 為什麼,不推薦使用STOP()方法? 對程式有什麼影響嗎?
- 學習Python有什麼好處?Python語言為什麼這麼受歡迎?Python
- 執行緒安全的單態類會影響效能麼?執行緒
- 為什麼你寫的Python執行的那麼慢呢?Python
- 為什麼Python要比其他語言更受喜歡?Python
- MySql定位執行效率較低的SQL語句MySql
- 什麼是Python執行緒?Python執行緒如何建立?Python執行緒
- 作為一門程式語言 Python為什麼如此受歡迎Python
- 為什麼有人說 Python 多執行緒是雞肋?Python執行緒
- 什麼是多執行緒?Python多執行緒有什麼優勢?執行緒Python
- 哪些因素會影響伺服器機櫃的正常工作伺服器
- 伺服器SSL證書價格受到哪些因素影響?伺服器
- 伺服器的連線速度有哪些因素影響呢伺服器