[英]Unable to import module
我想學習 Python,因為它看起來不錯,我想和 GTK 一起工作。 我以前的編程經驗是 Java 和 C# 在處理錯誤方面幾乎沒有痛苦。 但是我遇到了 pythons py2exe 的問題,並了解如何調試這個問題。 據我所知,這可能是與版本類型和文件位置有關的設置錯誤,而不是代碼。
我在跑步
所有超鏈接都可以在http://pastebin.com/MNGPQVMP看到這是由於 Stackoverflow 只允許我發布 2 個鏈接,但我有很多信息!
我的問題是 python 執行我的基本代碼沒有問題,但是使用 py2exe 會發生錯誤。
為了產生我跑的錯誤
python setup.py py2exe
列表中包含 python 文件、exe 錯誤日志和控制台 output
我跑了一些額外的信息
python -m py2exe.mf -d PyApp.py
python -m py2exe.mf -d setup.py
下面列出了兩個命令的 output
根據我從 exe 錯誤日志和控制台 output 可以理解的內容,它不能導入 gio(那是 glib 的一部分嗎?)。 額外的模塊列表表明其他錯誤。
PyApp.py 模塊列表中的 gio 錯誤指向 \Python27\lib\site-packages\gtk-2.0\glib\_ init _.py 該文件包含
enter from glib._glib import *
_PyGLib_API = _glib._PyGLib_API
del _glib here
所以看起來可能缺少一些東西。 但是我不太確定
那么如何解決這個導入錯誤呢?
另外作為旁注,Dependency Walker 還聲明缺少 2 個 windows dll。 http://localhostr.com/files/Gf1mXT3/Dependency_Walker..png我有 DLL,但它們是 64 位而不是 32 位,如果我將它們放在目錄中,則 Dependency Walker 會標記 64 位錯誤,但目前這顯然不是問題。
這是一個流行的問題,但我似乎無法使用我所獲得的信息來解決它。
很容易修復。 在你的 setup,py 文件中:你應該有這樣一行:
options = {
'py2exe': {
'packages':'encodings',
'includes': '<module names>',
}
},
為了修復錯誤,只需將“gio”添加到“包含”列表中,如下所示:
options = {
'py2exe': {
'packages':'encodings',
'includes': 'gio',
}
},
我有一個內置於 pyGTK 的程序,所以我必須導入許多模塊。 僅供參考,我的代碼看起來像這樣:
options = {
'py2exe': {
'packages':'encodings',
'includes': 'cairo, pango, pangocairo, atk, gobject, gio, subprocess',
}
},
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.