国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python cx_freeze打包工具處理問題思路及解決辦法

2020-01-04 17:46:10
字體:
來源:轉載
供稿:網(wǎng)友
這篇文章主要介紹了Python cx_freeze打包工具處理問題思路及解決辦法的相關資料,需要的朋友可以參考下
 

以下是在使用cx_freeze過程中遇到的問題及解決辦法(Win7)

1.問題描述:運行exe,啟動無數(shù)個主程序,導致系統(tǒng)無法使用

    原因:在程序中使用了multiprocessing的包

    解決辦法:在主文件if __name__ == "__main__":后,添加multiprocessing.freeze_support(),一定要在添加在最開始處

2. 問題描述:運行后,提示在freeze_support中sys.stdout.flush處異常

   原因:使用的PyQT作為界面,沒有控制臺

   解決辦法:在調(diào)用multiprocessing.freeze_support()前,重定向stdout和stderr,添加:sys.stdout = io.StringIO()和 sys.stderr = io.StringIO()

3.使用shelve模塊,IDE下調(diào)試可以正常使用,打包后無法使用

    原因:shelve 的 open 函數(shù)在運行中還會裝入其它的數(shù)據(jù)庫管理模塊,無從了解還需要哪些額外的包,故在打包時就漏掉了一些必要的模塊

    解決辦法:修改打包腳本,添加如下內(nèi)容:

packages = []for dbmodule in ['dbhash', 'gdbm', 'dbm', 'dumbdbm']:try:__import__(dbmodule)except ImportError:passelse:# If we found the module, ensure it's copied to the build directory.packages.append(dbmodule)options = {'build_exe': {'includes': 'atexit',"packages": packages}}

4.使用inspect.getsourcelines異常OSError: could not get source code

  原因:打包后,都是pyc文件,沒有源代碼,導致動態(tài)獲取代碼失敗

  解決辦法:將包含所需源碼的py文件打包到library.zip文件中,在‘build_exe'參數(shù)中,增加'zip_includes':['path//source.py']

以上給大家分享了Python cx_freeze打包工具處理問題思路及解決辦法,希望對大家有所幫助。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 玛沁县| 文安县| 石屏县| 彰武县| 涞水县| 保定市| 长垣县| 黑河市| 南开区| 航空| 芷江| 嘉义县| 山阳县| 孝感市| 青州市| 南投市| 招远市| 遂昌县| 靖远县| 万源市| 喀喇| 盐城市| 丹棱县| 遵义市| 肃宁县| 玛曲县| 页游| 南江县| 武陟县| 武清区| 井陉县| 双峰县| 城口县| 唐河县| 巴楚县| 张家港市| 思茅市| 望谟县| 百色市| 龙口市| 凌海市|