你需要驗證你的代碼仍然運行。你需要在Python的新版本下使用你獲得的新庫,然后檢查你的應(yīng)用程序是否需要重大改變。只有在你作出必要的正之后,你才會注意到版本之間的差別。然而,如果你正好確保你的應(yīng)用程序能在新版本下運行,而不需要任何改變,你可能會錯過那些版本升級帶來的新特性。
二、排序時使用鍵(key)
有很多老的Python排序代碼,它們在你創(chuàng)建一個自定義的排序時花費你的時間,但在運行時確實能加速執(zhí)行排序過程。元素排序的好方法是盡可能使用鍵(key)和默認(rèn)的sort()排序方法。
三、讓關(guān)鍵代碼依賴于外部包
這些外部包以不同的方式提高性能。例如,Pyrex能夠擴(kuò)展Python所能做的事情,例如使用C的數(shù)據(jù)類型來讓內(nèi)存任務(wù)加有效或直接。PyInIne讓你在Python應(yīng)用程序中直接使用C代碼。程序中的內(nèi)聯(lián)代碼單獨編譯,但它在利用C語言所能提供的效率的同時,也讓所有的代碼都在同一個地方。
四、交叉編譯應(yīng)用程序
一個有趣的交叉編譯器,Nuitka,可以將你的Python代碼轉(zhuǎn)換為C++代碼。這么做的結(jié)果是,你可以在原生模式下執(zhí)行應(yīng)用程序,而不是依靠解釋器。根據(jù)平臺和任務(wù),你可以看到一個顯著的性能提升。
五、優(yōu)化循環(huán)
每種編程語言都會強調(diào)需要優(yōu)化循環(huán)。優(yōu)化循環(huán)的關(guān)鍵,是要減少Python在循環(huán)內(nèi)部執(zhí)行的工作量,因為Python原生的解釋器在那種情況下,真的會減緩執(zhí)行的速度。