如何在Python 3中使用wxPython?

Nic*_*ick 11 python macos wxpython python-3.x

我安装了wxPython 3.0.1.1,但我无法import wx使用Python 3.4.1.我收到以下错误:

Python 3.4.1 (v3.4.1:c0e311e010fc, May 18 2014, 00:54:21) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import wx
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named 'wx'
Run Code Online (Sandbox Code Playgroud)

不过,我可以import wx使用Python 2.7(我的默认安装OS X 10.9):

Python 2.7.5 (default, Mar  9 2014, 22:15:05) 
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import wx
>>>
Run Code Online (Sandbox Code Playgroud)

我如何使用wxPython for Python 3,特别是Python 3.4.1?

nep*_*x32 13

您的计算机上安装了两个不同的pythons(3.4.1和2.7.5).不要指望能够在一个python中使用一个软件包(python 2.7.5中的wxPython 3.0.1.1)自动在另一个python中使用.

另外wxPython(经典)不适用于Python 3.你需要wxPython Phoenix才能做到这一点.

编辑:推荐的方式(由@RobinDunn)安装wxPython(凤凰品种将在2.7和3上工作,现在托管在PyPI上)现在正在做:

pip install wxPython
Run Code Online (Sandbox Code Playgroud)

如果您安装了开发人员版本,请事先执行以下操作:

pip uninstall wxPython_Phoenix
Run Code Online (Sandbox Code Playgroud)

您可以尝试在Python 3.4.1中安装一个wxPython Phoenix快照.但是,请注意,凤凰城与经典产品不是1000%兼容,您可能会在重复使用经典代码时遇到一个或另一个打嗝(但转换其可行且值得).

您可以在以下链接中找到以下wxPython wiki中的完整说明/说明:

使用pip安装wxPython-Phoenix

有几个要点:

  • pip/ setuptool是新足够(> 6.XX /> 12.xx)

  • 构建是"非官方的",因此pip拒绝安装它:基本上你需要--pre在使用pip安装时添加.

  • 您放弃SSL验证--trusted-host wxpython.org(现在https现在正常工作的现代版本不再需要).

Windows机器的完整命令:

C:\python27\scripts\pip.exe install --upgrade --pre -f https://wxpython.org/Phoenix/snapshot-builds/ wxPython_Phoenix
Run Code Online (Sandbox Code Playgroud)

请注意,这将为Python 2.7安装wxPython Phoenix.


Wer*_*ner 7

要在你的Python 3.4x中使用wxPython,你需要使用wxPython Phoenix - 正如其他人所指出的那样.要安装它,您可以:

pip install -U --pre -f http://wxpython.org/Phoenix/snapshot-builds/ wxPython_Phoenix 
Run Code Online (Sandbox Code Playgroud)

注意最后一个'/'和wxPython_Phoenix之后的空格