如何在Spyder的iPython控制台中显示所有警告?

如何在Spyder的iPython控制台中显示所有警告?,ipython,spyder,Ipython,Spyder,Spyder中的iPython控制台(从Spyder中的选项卡中运行时)默认情况下似乎会删除警告。此行为与iPython控制台本身运行的行为不同 它很容易复制。创建仅包含以下内容的文件: import sys print sys.argv In [305]: run test.py test args File "C:\Users\sdewey\Documents\intro to ML with python\test.py", line 13 print sys.argv

Spyder中的iPython控制台(从Spyder中的选项卡中运行时)默认情况下似乎会删除警告。此行为与iPython控制台本身运行的行为不同

它很容易复制。创建仅包含以下内容的文件:

import sys
print sys.argv
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'
请注意,这是无效的Python3,因为print没有括号。在iPython(而不是Spyder)中运行此操作,您将看到以下内容:

import sys
print sys.argv
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在此)您需要将
qtconsole
包更新到其版本4.3,以修复此错误

如果您使用的是Anaconda,则需要打开一个终端(
cmd.exe
)并运行此命令

conda update qtconsole
如果没有,你需要跑步

pip install -U qtconsole

那很有效,谢谢!有趣的是,它更新为“自定义”版本的Anaconda。希望将来的更新能正常工作。你说的自定义版本是什么意思?我明白了。一旦新的巨蟒被释放,它就会被移除。