1. 程式人生 > >python0.1-----pyhon的優缺點,為何學習python

python0.1-----pyhon的優缺點,為何學習python

ref 避免 gui 源代碼 調用 c++ 運行 編譯型 優缺點

python歷史:

  1989年開發完成,1991年發布第一個版本

創始人:

  Guido van Rossum(荷蘭人)

python的特點:

   解釋性:python是一種解釋性語言,計算機直接運行.py腳本,在運行的時候將每個語句翻譯成為cpu能過識別的機器碼。

   易於學習:關鍵字少,不需要大量的記憶。

   可移植:能夠較好的將python源代碼跨平臺在unix,linux,windows上。

   可擴展:如果希望加密某些代碼,可以用c/c++/java編寫,在python腳本裏調用它。

  可嵌入:可以在c/c++/java文件裏面調用python腳本。

python的缺點
:

運行速度慢:因為python是解釋性語言,運行python的時候必須先將.py的每一句先解釋為機器碼,然後cpu才能運行。作為對比,c/c++/java這類編譯型的語言,它們在運行源代碼前,會將.c/.cpp文件編譯成為機器碼,計算機只需要運行這些機器碼就可以了。因此,python除了要運行機器碼,還多了一個解釋的過程,運行速度慢也是沒辦法避免的。

無保密性:python腳本不能編譯,因此對外發布的時候所有python從業者都可以讀懂該腳本。而c/c++/java源代碼經過編譯編程機器碼。一般的從業者不能讀懂機器碼,因此,c/c++/java開發者只需要對外發布機器碼就可以了。

python的缺點這麽明顯,為什麽又要學習
python呢?

回答這個問題之前,首先要引入兩個概念:數據密集型任務和I/O密集型任務

數據密集型任務:該任務頻繁使用cpu進行計算,速度很快。

I/O密集型任務:該任務頻繁使用硬盤,讀寫需要花費很長時間,或者頻繁進行網絡的請求,網絡的等待也需要很長時間。

    因此對於需要大量計算的任務,即數據密集型任務,要求cpu對程序運行速度很快,c/c++/java更合適,python是應付不過來的。

    對於I/O密集型任務,cpu對於python腳本的運行速度不快,但是這些任務實際上也需要花費很長的時間,因此不要求cpu對於任務的執行速度有多快。python在完美勝任這些任務同時可以發揮python的特點。

python0.1-----pyhon的優缺點,為何學習python