在 ubuntu 16.04 上无需 Anaconda 安装 Spyder3

在 ubuntu 16.04 上无需 Anaconda 安装 Spyder3

(我尝试遵循这里。我不能使用 Anaconda)

sudo apt-get install spyder3

安装 150MB 的好东西。然后,我这样做:

pip install -U spyder

然后我就这么做了

spyder3

我得到:

Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/spyder/utils/external/lockfile.py", line 150, in lock
    symlink(str(os.getpid()), self.name)
FileExistsError: [Errno 17] File exists: '4809' -> '/home/me/.config/spyder-py3/spyder.lock'## Heading ##

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/spyder/utils/external/lockfile.py", line 177, in lock
    kill(int(pid), 0)
ProcessLookupError: [Errno 3] No such process

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/spyder/app/start.py", line 118, in main
    lock_created = lock.lock()
  File "/usr/local/lib/python3.6/dist-packages/spyder/utils/external/lockfile.py", line 196, in lock
    rmlink(self.name)
PermissionError: [Errno 13] Permission denied: '/home/me/.config/spyder-py3/spyder.lock'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/qtpy/__init__.py", line 148, in <module>
    from PySide import __version__ as PYSIDE_VERSION  # analysis:ignore
ModuleNotFoundError: No module named 'PySide'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/bin/spyder3", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.6/dist-packages/spyder/app/start.py", line 138, in main
    from spyder.app import mainwindow
  File "/usr/local/lib/python3.6/dist-packages/spyder/app/mainwindow.py", line 49, in <module>
    requirements.check_qt()
  File "/usr/local/lib/python3.6/dist-packages/spyder/requirements.py", line 39, in check_qt
    import qtpy
  File "/usr/local/lib/python3.6/dist-packages/qtpy/__init__.py", line 154, in <module>
    raise PythonQtError('No Qt bindings could be found')
qtpy.PythonQtError: No Qt bindings could be found
Error in sys.excepthook:
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 63, in apport_excepthook
    from apport.fileutils import likely_packaged, get_recent_crashes
  File "/usr/lib/python3/dist-packages/apport/__init__.py", line 5, in <module>
    from apport.report import Report
  File "/usr/lib/python3/dist-packages/apport/report.py", line 30, in <module>
    import apport.fileutils
  File "/usr/lib/python3/dist-packages/apport/fileutils.py", line 23, in <module>
    from apport.packaging_impl import impl as packaging
  File "/usr/lib/python3/dist-packages/apport/packaging_impl.py", line 23, in <module>
    import apt
  File "/usr/lib/python3/dist-packages/apt/__init__.py", line 23, in <module>
    import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'

Original exception was:
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/spyder/utils/external/lockfile.py", line 150, in lock
    symlink(str(os.getpid()), self.name)
FileExistsError: [Errno 17] File exists: '4809' -> '/home/me/.config/spyder-py3/spyder.lock'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/spyder/utils/external/lockfile.py", line 177, in lock
    kill(int(pid), 0)
ProcessLookupError: [Errno 3] No such process

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/spyder/app/start.py", line 118, in main
    lock_created = lock.lock()
  File "/usr/local/lib/python3.6/dist-packages/spyder/utils/external/lockfile.py", line 196, in lock
    rmlink(self.name)
PermissionError: [Errno 13] Permission denied: '/home/me/.config/spyder-py3/spyder.lock'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/qtpy/__init__.py", line 148, in <module>
    from PySide import __version__ as PYSIDE_VERSION  # analysis:ignore
ModuleNotFoundError: No module named 'PySide'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/bin/spyder3", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.6/dist-packages/spyder/app/start.py", line 138, in main
    from spyder.app import mainwindow
  File "/usr/local/lib/python3.6/dist-packages/spyder/app/mainwindow.py", line 49, in <module>
    requirements.check_qt()
  File "/usr/local/lib/python3.6/dist-packages/spyder/requirements.py", line 39, in check_qt
    import qtpy
  File "/usr/local/lib/python3.6/dist-packages/qtpy/__init__.py", line 154, in <module>
    raise PythonQtError('No Qt bindings could be found')
qtpy.PythonQtError: No Qt bindings could be found

答案1

经过反复尝试,我可以提出以下建议:

sudo apt-get install python3-pip python3-pyqt4 \
                     python3-pyqt5 python3-pyqt5.qtsvg python3-pyqt5.qtwebkit
sudo pip3 install -U spyder

结果:您已安装 Spyder3,并且其关于Spyder窗口包含

Spyder 3.2.4
...
Linux 上的 Python 3.5.2 64 位、Qt 5.5.1、PyQt5 5.5.1

在干净的 Ubuntu 16.04.3 LTS amd64 安装上进行测试。

相关内容