Как я могу запустить другой файл ipynb из файла ipynb? - PullRequest
0 голосов
/ 29 января 2020

Я хочу запустить другой файл b.ipynb из файла a.ipynb.

Когда я запускаю указанный код c в a.ipynb и запускаю файл b.ipynb, результаты сохраняются в сценарии, когда я запускаю b.ipynb в Jupyer Notebook.

, например:

a.ipynb

run b.ipynb ..?

b.ipybn

print("5")

Затем запустите скрипт a.ipynb и откройте b.ipynb.

Я хочу увидеть в b.ipynb

print("5")
>> 5

Какой код я должен написать в файле a.ipynb?

Ответы [ 2 ]

0 голосов
/ 29 января 2020

примером этого будет что-то вроде импорта функции из другого файла .ipynb

Вам необходимо pip install ipynb first

first.ipynb

def print():
   print('Stack Overflow')

second.ipynb

from ipynb.fs.full.first import print
print()
0 голосов
/ 29 января 2020

Вы можете просто использовать функцию magi c %run

Использование:

%run [-n -i -e -G]
     [( -t [-N<N>] | -d [-b<N>] | -p [profile options] )]
     ( -m mod | file ) [args]

Параметры после того, как имя файла передается программе в качестве аргументов командной строки (вставляется в sys.argv). Затем управление возвращается к приглашению IPython.

Это похоже на выполнение в системном приглашении python аргументов файла, но с преимуществом предоставления вам обратных трассировок IPython и загрузки всех переменных в ваше интерактивное пространство имен для дальнейшего использования. use (если не используется -p).

Файл выполняется в пространстве имен, изначально состоящем только из name == ' main ' и sys.argv, построенных как указано. Таким образом, он видит свою среду так, как будто она запускается как отдельная программа (за исключением совместного использования глобальных объектов, таких как ранее импортированные модули). Но после выполнения интерактивное пространство имен I Python обновляется всеми переменными, определенными в программе (кроме name и sys.argv).

...