如何在 Spyder 的 iPython 控制台中显示所有警告?
how can I show all warnings in the iPython console in Spyder?
Spyder 中的 iPython 控制台(当 运行 来自 Spyder 中的选项卡时)似乎默认去除警告。此行为不同于 iPython 控制台 运行 本身。
很容易重现。创建一个仅包含以下内容的文件:
import sys
print sys.argv
注意这是无效的Python3因为print没有括号。 运行 这在 iPython 中(不在 Spyder 中),您将看到以下内容:
In [305]: run test.py test args
File "C:\Users\sdewey\Documents\intro to ML with python\test.py", line 13
print sys.argv
^
SyntaxError: Missing parentheses in call to 'print'
如果您在 Spyder 的 iPython 选项卡中 运行 相同的内容,您将得到空白响应:
In [9]: run test.py test args
In [10]:
请注意,如果您 运行 一个没有错误的程序,您将像往常一样在 Spyder 中看到结果。例如,如果您在此处修复括号,您将在控制台中看到打印的 argv。似乎只有错误输出受到影响,标准输出没有受到影响。
我通过 Anaconda 4.3.1 获得了这个 Spyder 副本。这是 Spyder 3.1.2,Python 3.6。我查看了 Spyder 首选项,但没有看到任何解决失败的方法。
我的工作假设是这与错误输出与标准输出有关。这是一个 Windows 安装,所以我认为没有不同的流,但我可能弄错了。
(Spyder developer here) 您需要将 qtconsole
软件包更新到其版本 4.3 以修复此错误。
如果您使用的是 Anaconda,则需要打开终端 (cmd.exe
) 和 运行 此命令
conda update qtconsole
如果没有,您需要运行
pip install -U qtconsole
Spyder 中的 iPython 控制台(当 运行 来自 Spyder 中的选项卡时)似乎默认去除警告。此行为不同于 iPython 控制台 运行 本身。
很容易重现。创建一个仅包含以下内容的文件:
import sys
print sys.argv
注意这是无效的Python3因为print没有括号。 运行 这在 iPython 中(不在 Spyder 中),您将看到以下内容:
In [305]: run test.py test args
File "C:\Users\sdewey\Documents\intro to ML with python\test.py", line 13
print sys.argv
^
SyntaxError: Missing parentheses in call to 'print'
如果您在 Spyder 的 iPython 选项卡中 运行 相同的内容,您将得到空白响应:
In [9]: run test.py test args
In [10]:
请注意,如果您 运行 一个没有错误的程序,您将像往常一样在 Spyder 中看到结果。例如,如果您在此处修复括号,您将在控制台中看到打印的 argv。似乎只有错误输出受到影响,标准输出没有受到影响。
我通过 Anaconda 4.3.1 获得了这个 Spyder 副本。这是 Spyder 3.1.2,Python 3.6。我查看了 Spyder 首选项,但没有看到任何解决失败的方法。
我的工作假设是这与错误输出与标准输出有关。这是一个 Windows 安装,所以我认为没有不同的流,但我可能弄错了。
(Spyder developer here) 您需要将 qtconsole
软件包更新到其版本 4.3 以修复此错误。
如果您使用的是 Anaconda,则需要打开终端 (cmd.exe
) 和 运行 此命令
conda update qtconsole
如果没有,您需要运行
pip install -U qtconsole