问题描述:
在打开Anaconda3中的spyder5时出现闪退情况。
描述:在自建环境中打开spyder5时,出现界面后白屏闪退。并且报以下错误。(我的两个环境都是spyder5,都闪退)
报错:
No QCoreApplication instance found. Application patches not applied. You have to call load_stylesheet function after instantiation of QApplication to take effect.
Traceback (most recent call last):
File "E:\Anaconda\envs\tensorflow21\Scripts\spyder-script.py", line 10, in
sys.exit(main())
File "E:\Anaconda\envs\tensorflow21\lib\site-packages\spyder\app\start.py", line 214, in main
mainwindow.main(options, args)
File "E:\Anaconda\envs\tensorflow21\lib\site-packages\spyder\app\mainwindow.py", line 2310, in main
mainwindow = create_window(app, splash, options, args)
File "E:\Anaconda\envs\tensorflow21\lib\site-packages\spyder\app\mainwindow.py", line 2171, in create_window
main.post_visible_setup()
File "E:\Anaconda\envs\tensorflow21\lib\site-packages\spyder\app\mainwindow.py", line 1299, in post_visible_setup
self.projects.reopen_last_project()
File "E:\Anaconda\envs\tensorflow21\lib\site-packages\spyder\plugins\projects\plugin.py", line 546, in reopen_last_project
save_previous_files=False)
File "E:\Anaconda\envs\tensorflow21\lib\site-packages\spyder\plugins\projects\plugin.py", line 402, in open_project
project_type_class = self._load_project_type_class(path)
File "E:\Anaconda\envs\tensorflow21\lib\site-packages\spyder\plugins\projects\plugin.py", line 812, in _load_project_type_class
config.read(fpath)
File "E:\Anaconda\envs\tensorflow21\lib\configparser.py", line 696, in read
self._read(fp, filename)
File "E:\Anaconda\envs\tensorflow21\lib\configparser.py", line 1014, in _read
for lineno, line in enumerate(fp, start=1):
UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 264: illegal multibyte sequence
原因分析:
可能是C盘中的文件有损坏。如果spyder真的用不了就换,绝不可能重装系统。
无效解决方案:
- 在自建环境中反复卸载安装spyder,无效。
- 重装Anaconda3,重装环境,无效。
- pip upgrade qt pyqt5,无效。
- 根据报错’gbk’ codec can’t decode byte 0xae in position 264: illegal multibyte sequence,查找网上的解决办法,更改源文件(比如删去中文注释,添加encoding='utf-8’等),均无效。
- 更新环境中的所有包,conda upgrade --all,无效。
有效解决方法
- 最终新建了一个环境,安装spyder4,可以打开。所以,对自建环境中spyder5降版本以后,可以正常打开。
- 后来想了想,还是想用spyder5。查资料后发现,在命令行中重置原来的spyder既可。命令:spyder --reset
总结
尽量不要用Anaconda Navigator操作,尽量使用命令行,感觉界面用多了,会出问题。。。