Я хотел бы понять, как работает переменная область видимости в записных книжках Jupyter.
Когда я создаю записную книжку bash с двумя ячейками, экспортируемые переменные среды видны через границы ячейки:
В [1]:
export PATH=$PATH:~/samplepath
В [2]:
echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/myuser/samplepath
Но если я создам Python записывает и использует магию ячеек для достижения того же результата, переменные больше не видны через границы ячеек:
В [1]:
%%script bash
export PATH=$PATH:~/samplepath
В [2]:
%%script bash
echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Это поведение остается одинаковым для разных магий (т. Е. Использование восклицательного знака перед эхо вместо сценария магия дает тот же результат),
Итак, я хотел бы понять, каковы правила области видимости в этом случае и как я могу export
действительно экспортировать переменные, чтобы они были видны во всей записной книжке.