python-wxgtk2.8을 설치한 후에도 wx를 여전히 가져올 수 없습니다.

python-wxgtk2.8을 설치한 후에도 wx를 여전히 가져올 수 없습니다.

저는 Linux Ubuntu 14.04 LTS를 실행 중이고 Python에서 GUI를 개발할 수 있도록 wxPython을 설치하려고 합니다.

Python 2.7과 3이 설치되어 있지만 기본적으로 2.7이 설치되어 있습니다.

웹사이트에서 권장하는 대로 wxPython을 설치했습니다.

apt-get install python-wxgtk2.8

설치되었다고 표시되지만 Python, 2.7 및 3.0으로 이동하여 라이브러리( import wx)를 가져오면 오류가 발생합니다.

>>> import wx
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named wx

실행 결과 apt-cache policy python-wxgtk2.8dpkg -l python-wxgtk2.8

kiancross@whb:/etc/apt$ apt-cache policy python-wxgtk2.8
python-wxgtk2.8:
  Installed: 2.8.12.1+dfsg-2ubuntu2
  Candidate: 2.8.12.1+dfsg-2ubuntu2
  Version table:
 *** 2.8.12.1+dfsg-2ubuntu2 0
        500 http://gb.archive.ubuntu.com/ubuntu/ trusty/universe amd64 Packages
        100 /var/lib/dpkg/status
kiancross@whb:/etc/apt$ also dpkg -l python-wxgtk2.8

kiancross@whb:/etc/apt$ dpkg -l python-wxgtk2.8
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                   Version          Architecture     Description
+++-======================-================-================-==================================================
ii  python-wxgtk2.8        2.8.12.1+dfsg-2u amd64            wxWidgets Cross-platform C++ GUI toolkit (wxPython

나는 확인했다 /usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx/__init__.py. 아래와 같이 파일이 있습니다. 내가 실행하면 무엇이 반환되는지 확인할 수 있습니다.dpkg -S /usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx/__init__.py

kiancross@whb:/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx$ ls -a
.            calendar.py    _core.py    glcanvas.py   __init__.py   py              __version__.pyc  _wizard.so
..           calendar.pyc   _core.pyc   glcanvas.pyc  __init__.pyc  richtext.py     webkit.py        xrc.py
animate.py   _calendar.so   _core_.so   _glcanvas.so  lib           richtext.pyc    webkit.pyc       xrc.pyc
animate.pyc  combo.py       _gdi.py     grid.py       media.py      _richtext.so    _webkit.so       _xrc.so
_animate.so  combo.pyc      _gdi.pyc    grid.pyc      media.pyc     stc.py          _windows.py
aui.py       _combo.so      _gdi_.so    _grid.so      _media.so     stc.pyc         _windows.pyc
aui.pyc      _controls.py   gizmos.py   html.py       _misc.py      _stc.so         _windows_.so
_aui.so      _controls.pyc  gizmos.pyc  html.pyc      _misc.pyc     tools           wizard.py
build        _controls_.so  _gizmos.so  _html.so      _misc_.so     __version__.py  wizard.pyc
kiancross@whb:/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx$ dpkg -S /usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx/__init__.py
python-wxgtk2.8: /usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx/__init__.py
kiancross@whb:/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx$ 

kiancross@whb:~$ ipython
Python 2.7.6 (default, Mar 22 2014, 22:59:56) 
Type "copyright", "credits" or "license" for more information.

IPython 1.2.1 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object', use 'object??' for extra details.

In [1]: import wx

In [2]: wx.__file__
Out[2]: '/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx/__init__.pyc'

왜 작동하지 않는지 아는 사람이 있나요?

답변1

채팅으로 포스터와 대화를 나눈 후 (fromhttp://chat.stackexchange.com/transcript/message/19959589#19959589) 분명히 그는 두 가지 버전의 Python 2.7이 설치되어 있습니다. 그 중 하나인 2.7.6은 시스템(Ubuntu 바이너리 패키지) 버전이고, 다른 하나(2.7.5)는 /usr/local.

그는 python2.7.5를 선택했고 ipythonIdle은 2.7.6을 선택했습니다. wxpython 패키지는 바이너리 패키지에서 설치되기 때문입니다. 통역사는 python그것을 볼 수 없습니다. 왜 ipython하나를 본 다음 python다른 하나를 보았는지는 확실하지 않습니다 . 어쩌면 python로컬에도 설치할 수도 있습니다.

포스터는 현시점에서 무엇을 해야할지 모르고 조언을 해주기도 어렵습니다. 자연스러운 일은 로컬 설치를 제거하는 것이지만, 이를 위해서는 먼저 설치가 어떻게 이루어졌는지, 어떤 패키지가 설치되었는지, 중요한 종속성이 있는지 여부를 이해해야 합니다.

답변2

세 가지 이유가 있을 수 있습니다.

  1. Ubuntu의 패키지가 손상되었거나 구성되지 않았습니다. 첫 번째는 가능성이 낮습니다. 아마도 어딘가에 버그 보고서일 것입니다. 두 번째는 dpkg가 ii설치된 패키지를 보고하기 때문에 잘못된 것입니다.
  2. 모듈을 설치하기 전에 열린 대화형 Python 셸을 사용하고 있습니다. 이것이 가장 가능성이 높은 이유입니다. 셸을 닫았다가 다시 열면 작동합니다.
  3. 시스템 Python 바이너리를 사용하고 있지 않습니다. 여기에는 pip, virtualenv 또는 소스에서 수동 설치가 포함됩니다.

관련 정보