更新到 Spyder 4.1.4 后 Spyder 返回 TypeError

Posted

技术标签:

【中文标题】更新到 Spyder 4.1.4 后 Spyder 返回 TypeError【英文标题】:Spyder returning TypeError after updating to Spyder 4.1.4 【发布时间】:2020-12-23 14:40:04 【问题描述】:

此命令未能执行,因为尝试从 Spyder 的编辑器获取文件代码时发生错误。错误是:

An exception has occurred, use %tb to see the full traceback.

TypeError: handle_get_file_code() got an unexpected keyword argument 'save_all'

【问题讨论】:

我在谷歌上找不到修复,所以我在这里问 奇怪的是,我从昨天开始就遇到了同样的错误,但没有升级到 4.1.4(我还在 4.1.3...)。也许它可以链接到spyder-kernels,因为当我开始使用新的venv 时出现错误。 在github.com/spyder-ide/spyder/issues/13715查看开发者问题 【参考方案1】:

我在 Spyder 4.1.4 上遇到了同样的问题。我完全卸载了 spyder 并将其重新安装到最新版本(现在是 4.1.5),显然他们已经解决了这个版本中的潜在问题。因此,以下标准程序应该可以解决问题:

pip uninstall spyder
conda uninstall spyder
conda install spyder

我在 conda 环境中使用 spyder,因此我认为 pip uninstall 真的没有必要。

【讨论】:

这对我有用(没有 pip 卸载)。但是有人抱怨“环境不一致”,罪魁祸首是 defaults/win-64::python-language-server==0.31.10=py37_0。我选择忽略这一点,Spyder 4.1.5 已正确安装并正常工作。 在没有 pip 卸载的情况下为我工作。从 spyder-4.1.3-py37_0 + spyder-kernels-1.9.4-py37_0 到 spyder-4.1.5-py37_0 + spyder-kernels-1.9.4-py37_0。另请参阅 github.com/spyder-ide/spyder/issues/13715 上的开发人员问题【参考方案2】:

问题似乎来自新版本的子包spyder-kernels

我已经卸载了 1.9.4 版

conda uninstall spyder-kernels

又回到了之前的版本

conda install spyder-kernels=1.9.3

【讨论】:

是的,当我开始使用新的venv 时,我遇到了错误,所以它肯定是spyder-kernels 但是我在降级后得到以下信息:Your Python environment or installation doesn't have the spyder‑kernels module or the right version of it installed (>= 1.9.4 and < 1.10.0). Without this module is not possible for Spyder to create a console for you. @Vincent 您找到解决方案了吗?如果找到了,能否分享一下详细信息? @brethvoice 抱歉,我找到了确切的问题,但似乎不记得了。绝对与 spyder 和 spyder-kernels 有关;卸载/重新安装将使您顺利完成 @brethvoice 我正在使用 Windows【参考方案3】:

我今天早上更新到 Spyder 4.1.4 并在尝试运行我的代码时遇到了同样的问题。值得注意的是,我使用 Anaconda,所以不确定这会对您产生什么影响。

我尝试恢复到旧版本的 Spyder 并通过 Anaconda Prompt 升级到 Spyder 4.1.5,但只有通过进入 Anaconda Navigator 并完全删除 Spyder 应用程序才能成功避免上述错误消息.然后我从 Anaconda Navigator 安装了 Spyder 4.1.5,并能够运行我的代码。

【讨论】:

【参考方案4】:

我遇到了同样的问题。而是在卸载和重新安装时,打开 anaconda 提示符并运行

conda install spyder=4.1.5

关闭并重新打开 spyder 应用程序。您的算法将无缝运行。

【讨论】:

【参考方案5】:

更新到 Spyder 版本 4.1.5 为我解决了这个问题。

【讨论】:

【参考方案6】:

以下升级为我解决了这个问题:

conda install spyder=4.1.5

我在this thread底部找到了解决方法。

【讨论】:

@user3385948 您使用的是哪个操作系统(或者这无关紧要)? 我使用的是 Anaconda,安装在 Windows 10 Pro x64(最新版本)上【参考方案7】:

是Spyder 4.14的bug,升级到V4.15,然后解决你的问题

【讨论】:

【参考方案8】:

我必须在这里结合一些答案。

首先我删除了 spyder:

pip uninstall spyder
conda uninstall spyder

之后我再次安装它:

conda install spyder

第一部分基于@CrossEntropy 的回答。

此更改并未解决问题,但允许我按照@quangtrank9 的建议更新 spyder 到其最新版本 (4.1.5)。

此过程避免我删除并重新安装 anaconda。这将是一个不受欢迎的过程。

【讨论】:

在没有 pip 卸载的情况下为我工作。从 spyder-4.1.3-py37_0 + spyder-kernels-1.9.4-py37_0 到 spyder-4.1.5-py37_0 + spyder-kernels-1.9.4-py37_0。另请参阅github.com/spyder-ide/spyder/issues/13715 上的开发人员问题 我试过了,但没用,这就是为什么我必须卸载并重新安装。【参考方案9】:

在尝试任何卸载之前,我尝试过

> conda install spyder=4.1.5

这些是相关的变化

The following packages will be UPDATED:

  jedi                                        0.14.1-py37_0 --> 0.17.1-py37_0
  python-language-s~ pkgs/main/win-64::python-language-ser~ --> pkgs/main/noarch::python-language-server-0.35.1-py_0
  spyder                                       4.0.0-py37_0 --> 4.1.5-py37_0

The following packages will be DOWNGRADED:

  autopep8                               1.5.7-pyhd3eb1b0_0 --> 1.5.6-pyhd3eb1b0_0
  flake8                                 3.9.2-pyhd3eb1b0_0 --> 3.9.0-pyhd3eb1b0_0
  parso                                  0.8.2-pyhd3eb1b0_0 --> 0.7.0-py_0
  pycodestyle                            2.7.0-pyhd3eb1b0_0 --> 2.6.0-pyhd3eb1b0_0
  pyflakes                               2.3.1-pyhd3eb1b0_0 --> 2.2.0-pyhd3eb1b0_0
  spyder-kernels                      1.10.2-py37haa95532_0 --> 1.9.4-py37_0

特别注意将spyder-kernels 降级为1.9.4。 这可能就是原因

> conda install spyder-kernels=1.9.4

还有seems to work。

注意: 一个包的更新会导致另一个包的降级,这对我来说仍然有些令人费解。 并不是说我从编程/技术的角度不理解这是如何发生的,但我不希望它发生(而且经常发生)。

【讨论】:

【参考方案10】:

我必须结合此处提供的答案:

首先使用 pip 卸载spyder-kernelssudo pip3 uninstall spyder_kernels==1.9.4 使用 conda 卸载 spyderconda uninstall spyder 使用 conda 安装 spyderconda install spyder

【讨论】:

【参考方案11】:

conda update --all 对我有用。

【讨论】:

【参考方案12】:

我有同样的问题。按照这里讨论的内容:https://github.com/spyder-ide/spyder/issues/13715,我刚刚运行了命令:

conda install spyder-kernels=1.9.3

它成功了!

【讨论】:

【参考方案13】:

更新:当遵循this 答案的建议时,我首先做了conda update conda,然后是conda update --all,正如this 答案中所建议的那样。以下是 conda env export 在我的 Windows 10 conda (Python 3.7) 环境中返回的部分列表,目前没有有这个问题:

- spyder=4.1.5=py37_0
- spyder-kernels=1.9.4=py37_0

【讨论】:

以上是关于更新到 Spyder 4.1.4 后 Spyder 返回 TypeError的主要内容,如果未能解决你的问题,请参考以下文章

更新后 Spyder 未打开 [关闭]

由于 python.app 错误,conda 更新后无法启动 Spyder

Spyder 的 Anaconda 更新失败

anaconda 中spyder打开

如何在 anaconda 上更新 spyder

用anaconda升级Spyder到4.0.1后,打开Spyder还是老版本?