(Python)Spyder 无法启动

(Python)Spyder 无法启动

由于某种原因,我的 Python IDE spyder 不再工作。尝试启动它时,它没有打开。~$ spyder在控制台中尝试时出现以下错误:

Traceback (most recent call last):
  File "/usr/bin/spyder", line 2, in <module>
from spyderlib import start_app
File "/usr/lib/python2.7/dist-packages/spyderlib/start_app.py", line 13, in <module>
from spyderlib.config import CONF
File "/usr/lib/python2.7/dist-packages/spyderlib/config.py", line 433, in <module>
subfolder=SUBFOLDER, backup=True, raw_mode=True)
File "/usr/lib/python2.7/dist-packages/spyderlib/userconfig.py", line 111, in __init__
self.load_from_ini()
File "/usr/lib/python2.7/dist-packages/spyderlib/userconfig.py", line 150, in load_from_ini
self.read(self.filename())
File "/usr/lib/python2.7/ConfigParser.py", line 305, in read
self._read(fp, filename)
File "/usr/lib/python2.7/ConfigParser.py", line 546, in _read
raise e
ConfigParser.ParsingError: File contains parsing errors: /home/rk/.spyder2/.spyder.ini
[line 317]: 'shor'

我尝试过,sudo apt-get install --reinstall spydersudo apt-get purge spyder && sudo apt-get install spyder也没有用。我也没有在网上找到解决问题的方法。

谁能告诉我出了什么问题?

答案1

我遇到了一个相关的问题。Spyder(版本 2.2.5)崩溃了。我尝试在重启电脑后重新打开它,但什么也没发生——点击启动器中的符号没有任何反应,也只是输入

spyder

在命令行中输入

spyder --new-instance

导致 GUI 被启动。查看文件

start_app.py

在目录中

/usr/lib/python2.7/dist-packages/spyderlib/

很明显,以下几行代码就是问题所在:

if CONF.get('main', 'single_instance') and not options.new_instance \
  and not mac_app:
    # Minimal delay (0.1-0.2 secs) to avoid that several
    # instances started at the same time step in their
    # own foots while trying to create the lock file
    time.sleep(random.randrange(1000, 2000, 90)/10000.)

    # Lock file creation
    lockf = get_conf_path('spyder.lock')
    lock = lockfile.FilesystemLock(lockf)

    # lock.lock() tries to lock spyder.lock. If it fails,
    # it returns False and so we try to start the client
    if not lock.lock():

        if args:
            send_args_to_spyder(args)
    else:
        atexit.register(lock.unlock)
        from spyderlib import spyder
        spyder.main()
else:
    from spyderlib import spyder
    spyder.main()

因此,spyder 的某个实例先前已创建,并已创建该文件

spyder.lock

这导致命令给出的参数列表为空

spyder

被传递给 spyder,导致不执行任何操作:

send_args_to_spyder(args)

因此,只需使用应用程序启动器或终端重命名 spyder.lock 文件即可让 spyder 再次启动。

答案2

解决了问题(某种程度上):

看看sudo gedit /home/USERNAME/.spyder2/.spyder.ini这个文件,它基本上包含你本地的 spyder 首选项/设置。如果你知道错误的行应该说什么,你可以简单地更改它们。

因为我没有,所以我直接删除了整个 .spyder2 文件夹。然后当我删除时,它又重新创建了sudo apt-get purge spyder && sudo apt-get install spyder

简单地执行sudo apt-get purge spydersudo apt-get install --reinstall spyder不会起作用,因为它不会影响您的个人配置文件。您必须手动修复或删除 .spyder.ini。

答案3

我遇到了同样的问题。当我尝试从终端打开 Spyder 时,收到以下错误消息:

ConfigParser.ParsingError: File contains parsing errors: /home/.spyder2/spyder.ini
    [line 55]: 'font/italic'

我的解决方案:

  1. 使用以下方式打开 spyder.ini 文件nano /home/.spyder2/spyder.ini

  2. 然后删除 [line 55]: 'font/italic'

  3. 保存文件

完成!我可以打开 Spyder 了。

答案4

这是Wilhelm Braun 提出的修复建议

就我而言,我没有收到任何错误消息。简单而悄无声息的是,无论我使用命令行还是桌面菜单,Spyder 2.2.5 都无法启动。

该命令l ~/.spyder2显示一个悬空的(红色)符号链接spyder.lock@

删除此文件后,Spyder 便可按预期启动。

相关内容