#python #jupyter-notebook
#python #jupyter-notebook
Вопрос:
Когда вы находитесь в первой записной книжке jupyter (first.ipynb), вы можете выполнить вторую, но как можно передать аргументы?
Предполагая, что второй имеет следующее содержимое:
xx = 10
Вы можете вызвать второй из первого, например:
%run second.ipynb
xx # will print 10 (= nicely set up from the second one)
Но как я могу передать параметр во вторую записную книжку / в run magic?
Т.Е..
%run second.ipynb foo=20
И затем:
if foo is not None:
xx = foo
во втором?
Этот наивный подход терпит неудачу с:
NameError: name 'foo' is not defined
т. е. параметр не передается.
Ответ №1:
Поскольку он выполняется в том же процессе, я могу просто определить аргументы как переменные в первой записной книжке.
Это кажется грязным, но удобно.