需要金幣:![]() ![]() |
資料包括:完整論文 | ![]() |
![]() |
轉(zhuǎn)換比率:金額 X 10=金幣數(shù)量, 例100元=1000金幣 | 論文字?jǐn)?shù):11072 | ![]() | |
折扣與優(yōu)惠:團(tuán)購最低可5折優(yōu)惠 - 了解詳情 | 論文格式:Word格式(*.doc) | ![]() |
摘要:隨著Python語言的廣泛使用,其代碼性能慢的問題也逐漸暴露出來并被重視。本課題基于該問題,提出了兩種優(yōu)化方案,并從優(yōu)化結(jié)果以及使用難度方面進(jìn)行了對比。這兩種方案分別是用Ctypes進(jìn)行優(yōu)化和用Cython優(yōu)化。 其中,利用Cython進(jìn)行優(yōu)化的難點(diǎn)是Cython的安裝及其配置,因在安裝和使用Cython時(shí)需要系統(tǒng)具有c語言環(huán)境,故而涉及到系統(tǒng)環(huán)境變量的配置;而對于Ctypes來說,因其是Python本身自帶的庫,所以其難點(diǎn)在于對函數(shù)進(jìn)行C語言的改寫上。兩種方法各有優(yōu)劣。 通過兩種方案的的執(zhí)行,一種是利用Cython直接將相應(yīng)的pyx文件編譯為pyd文件,之后在Python中直接調(diào)用該函數(shù)來完成程序的運(yùn)行;另一種則是先將相應(yīng)的文件改寫為C語言函數(shù),并將其編譯為相對應(yīng)版本的dll文件,再在Python中調(diào)用,從而成功執(zhí)行程序。通過對兩個(gè)運(yùn)行結(jié)果的對比,可以看出Cython可以提升程序的運(yùn)行效率將近一倍;而Ctypes提升效果大約百分之四十,由此可以總結(jié)出兩種方法都對Python的運(yùn)行效率有一定的提升,但其中略有差別。
關(guān)鍵詞:性能優(yōu)化;Cython;Python;Ctypes
目錄 摘要 ABSTRACT 第一章 緒 論-1 1.1背景-1 1.2 研究現(xiàn)狀-1 1.3 研究意義-2 1.4 主要工作和結(jié)構(gòu)安排-2 1.5 本章小結(jié)-3 第二章 Python語言及代碼介紹-4 2.1 Python的背景-4 2.2 Python程序代碼介紹-4 2.3 Python程序運(yùn)行結(jié)果-12 2.4 本章小節(jié)-13 第三章 Cython介紹及優(yōu)化結(jié)果-14 3.1 Cython的定義與介紹-14 3.2 Cython的安裝與配置-14 3.3 Cython編譯成果介紹-15 3.4 本章小結(jié)-21 第四章 Ctypes介紹及優(yōu)化結(jié)果-22 4.1 Ctypes的介紹-22 4.2程序運(yùn)行結(jié)果展示-22 4.3本章小節(jié)-24 第五章 總結(jié)與展望-26 5.1總結(jié)-26 5.2 展望-27 參考文獻(xiàn)-28 致 謝-30 |