您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關怎么進行Python運行效率優于C語言的對比,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
Python是個非常流行的解釋型腳本語言。C是一個非常流行的編譯語言。由于其編譯的性質,導致C一般比Python要快,但是它是更底層的。相對的,Python編程更加快速和簡單。譯者注:在目前最權威的TIOBE編程語言排行榜上,Python運行效率和C語言分處榜上第6和第2的高位,在腳本語言和編譯語言中分別坐著第二把交椅(***把交椅分別是PHP和Java)。
問題在于,Python程序(在沒有輸入的情況下)運行時所額外花費的時間相對C而言是否更加劃算,以及運行時所用的時間是否比編程時間更加重要。
系統程序
我決定建立一個簡單的程序,該程序可以處理以下公式的計算:
{ x + y = 14 { x^2 + y^2 = 100
我很快用Python寫了一遍,找到了答案。然后,我將其翻譯成C語言。我知道,在C語言中的同一程序會花費比Python運行效率更多一些的代碼,但是這并非是我所注意的問題。在繼續之前,讓我們看看代碼:
Python: x = 1 while x <= 14: y = 14 - x print str(x) + "|" + str(y) if x**2 + y**2 == 100: print "match" xx = x + 1 C: #include (<)stdio.h(>) int main() { int x, y, t; for (x = 1; x <= 14; x++) { y = 14 - x; printf("%d|%d\n", x, y); if ((x*x) + (y*y) == 100) printf("match\n"); } return 0; }
我總是聽說C語言永遠是最快的語言之一。在命令端口運行這兩個程序,我并沒看出這兩個的運行速度有任何差別。所以我打開Ubuntu的命令端口,并輸入如下代碼:
time ./a.out
(time指令,緊跟著可以脫離time指令而單獨運行的普通指令,運行指令并計時——很明顯,這里的測試對象是C程序。)我得到0.001秒real time(真實用時),而user time(用戶用時)和system time(系統用時)都是0。接下來是Python運行效率:
time python system.py
結果有些嚇人:0.017秒real time,0.012秒user time,0.004秒system time。當然了,real time的差別畢竟只有16毫秒,不過在長時間運行大量運算的大系統下這個差別就很明顯了。
百萬程序
我決定將這個設想付諸現實。我寫了另一個程序,這個程序將0到1000000之間的所有整數,包括0,依次print輸出。當然這和我之前提到的大量運算的情況還是不同的,不過還是給了計算機比較多一些需要print的內容。
看完上述內容,你們對怎么進行Python運行效率優于C語言的對比有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。