Spyder не показывает вывод stderr в консоли IPython при запуске команд с os.system - PullRequest
0 голосов
/ 28 ноября 2018

Настройка: MacOS High Sierra, Spyder 3.3.1, Python 2.7.15, 64 бита, Qt 5.9.4, PyQt5 5.9.2 в Darwin

Я запускаю следующий код в консоли IPython в Spyder:

In [1]: import os
In [2]: os.system("ls")
Out[2]: 0

In [3]: os.system("aasdasd") 
Out[3]: 32512

Я вижу вывод на стандартный вывод команды ls в оболочке bash, где я запускаю spyder, но не на стандартный вывод второго вызова os.system, который должен вывести sh: asdasd: command not found.

Куда spyder перенаправляет stderr?Есть ли способ просмотреть сообщения об ошибках, подобные сообщениям, сгенерированным во втором случае?

Большое спасибо!

1 Ответ

0 голосов
/ 28 ноября 2018

( сопровождающий Spyder здесь ) Это было исправлено в spyder-kernels 0.3.0 , пакете, который предоставляет ядра для наших консолей.И под фиксированным я имею в виду, что как stdout, так и stderr внешних команд теперь отображаются непосредственно в наших консолях IPython.

Чтобы обновить spyder-kernels, закройте Spyder и запустите системный терминал (xterm или Terminal.app,это не работает в Windows):

conda install spyder-kernels=0.*

, если вы используете Anaconda (в данный момент она недоступна, но должна появиться в ближайшее время, подождите, пока она не появится), или

pip install spyder-kernels==0.*

, если вы используете пользовательскую установку Python.

...