我成功創建了我的應用程序的可執行版本(Py2exe,Pyinstaller)。當我嘗試從.EXE應用程序,我得到一個錯誤日誌文件如下:ImportError:無法導入名稱發佈者
Traceback (most recent call last): File "CreateAS.pyw", line 8, in <module> ImportError: cannot import name Publisher
我真的卡在這個部分。你能幫我嗎?
感謝
我成功創建了我的應用程序的可執行版本(Py2exe,Pyinstaller)。當我嘗試從.EXE應用程序,我得到一個錯誤日誌文件如下:ImportError:無法導入名稱發佈者
Traceback (most recent call last): File "CreateAS.pyw", line 8, in <module> ImportError: cannot import name Publisher
我真的卡在這個部分。你能幫我嗎?
感謝
我猜您正在使用一個版本的wxPython是>= 2.8.11.0
?如果是這樣,wx.lib.pubsub
包已更改。 This page描述了這些變化。在wxPython郵件列表here上也有一個討論這個的帖子。
爲了使這一切都在我的項目中工作,我做了以下描述here這是上述郵件列表線程的一部分。下面我總結一下:
The much preferable alternative (ie no hacks!) if you can hack it (sorry!) is to use the same messaging protocol as v1, but in latest API, this is called "arg1":
# only in app's startup module from wx.lib.pubsub import setuparg1 # in all modules that use pubsub from wx.lib.pubsub import pub as Publisher
and replace any occurence of
"Publisher()." by "Publisher."
然後在我的setup.py
劇本,我有以下增加的選項:
options = {
"py2exe": {"packages": ['wx.lib.pubsub']}
}
setup(data_files=data_files,
windows=[
{'script': 'btpos.py'],
options=options)
您現在應該能夠建立使用發佈 - 訂閱新版本的可執行文件,但與舊的api。您可能還想查看pubsub的新v3 api。如果你的項目不是太大,你可以在不改變太多的情況下獲得。
在setuparg1之後導入發佈服務器不起作用,而使用setupv1嘗試它。但是,在編譯時我仍然得到ImportError。 – 2011-06-27 14:39:50
嘗試這樣的:
from wx.lib.pubsub import setuparg1
from wx.lib.pubsub import pub as Publisher
然後:由Publisher.
這個答案沒有提供任何比接受答案更新的東西,這也是一個超過三年的問題。 – meskobalazs 2015-02-04 09:56:09
取代Publisher()
任何occurence我使用的是使用wx.lib.pubsub從學習過這個問題也來了一個示例代碼。
要解決這個問題簡單地說,我只是改了行:
from wx.lib.pubsub import Publisher as pub
要:
from wx.lib.pubsub import pub
接受的答案已經鏈接,仍然作出正確的,但爲了簡單起見,我已經增加了這個解決方案,因爲接受的解決方案有點混亂。
這是讓舊程序快速運行的最短途徑! – 2017-01-10 18:05:26
未找到節時會引發[NoSectionError](http://docs.python.org/library/configparser.html#ConfigParser.NoSectionError)異常。你確認你有一個叫做'locations'的部分嗎? – user225312 2011-03-21 06:41:17
我通過將與紙漿相關的代碼集成到我的主.pyw模塊中解決了這個問題。所以現在只有一個python模塊。但是這次我得到了一個新的錯誤,如上所述。 – Shansal 2011-03-21 09:36:48
請描述如何從''CreateAS.pyw''導入''Publisher'',其中''Publisher'位於哪裏以及它的用途。 – 2011-03-23 06:58:21