2010-11-04 28 views

回答

4

沒關係。不要圍繞代碼速度構建程序;圍繞編碼器速度進行構造。如果你用Python編寫某些東西,速度太慢,那麼找到cProfile的瓶頸並加快速度。你如何加快速度?你嘗試一下並分析它們。通常,關鍵循環中的函數調用開銷很高。字節編譯你的代碼需要很少的時間,只需要做一次。

+0

「不要圍繞代碼速度構建程序;圍繞代碼速度進行構建」。 +1。畢竟,這是爲什麼我們使用Python。 – 2010-11-04 23:31:17

1

兩件事情:

代碼在單獨的模塊被編譯成在第一運行時字節碼,並保存爲預編譯.pyc文件,所以它並沒有被作爲源不是招」在下次運行,只要重新編譯自從那時起被修改了。這可能會導致一個小的性能優勢,但只在程序啓動時。

另外,如果將Python放置在函數內而不是放在文件的頂層,Python會更加高效地存儲變量等。但我不認爲這就是你在這裏提到的,是嗎?

2

不管你把代碼放在哪裏,它都必須被解析一次並在必要時編譯。將代碼放入方法或不同文件之間的區別可能具有微不足道的性能差異,但您不應該擔心。

關於唯一的語言,你現在必須擔心構造「正確」的是Javascript。因爲它必須從網上下載到客戶計算機。這就是爲什麼有這麼多的壓縮器和混淆器。像這樣的東西不是用Python完成的,因爲它不是必需的。

相關問題