Репостирование в качестве ответа: имена фактически помещаются в ваше интерактивное пространство имен, но имена определяются, когда начинается iPython, скрыты от %whos
, Таким образом, это говорит о том, что пространство имен пустое, хотя это не так. Если вы попробуете использовать имена, они должны работать нормально.
Обновить пространство имен ipython при запуске сценария из командной строки
-
29-07-2022 - |
Вопрос
В iPython 0.10 можно было запустить сценарий из командной строки, затем из интерактивного режима, немедленно получить доступ к именам в пространстве имен:
ipython -i some_script.py
%whos
tom
dick
jane
Сейчас я использую Python 3.3.2 и Ipython 1.1.0. Где -то вдоль линии это поведение изменилось. Теперь я получаю:
ipython3 -i some_script.py
%whos
Interactive namespace empty
Теперь я должен запустить ipython, затем %запустить сценарий, чтобы сохранить пространство имен:
ipython3 -i
%run some_script.py
%whos
tom
dick
jane
Есть ли вариант командной строки или техника, которая даст мне старое поведение? я пытался
ipython3 -i -c "%run some_script.py"
Но это тоже не работает.
Я знаю, это ленивая вещь, но на одном шаге ускоряется вращение отладки.
Решение
Не связан с StackOverflow