我想进行一些独立的计算,所有这些都在jupyter笔记本中的自己的单元格中 - 如果你愿意,每个单元格都有自己的“主”功能。目前,它看起来像包含Python的所有单元格的并集 代码本质上是一个大的Python程序。
简而言之,我问Mathematica的Jupyter版this问题。
答案 0 :(得分:7)
单元格中定义的变量成为全局名称空间中的变量。 要将变量隔离到本地范围,请将它们放在函数中:
In [1]:
def foo():
x = 1
return x
foo()
In [2]:
def bar():
x = 2
return x
bar()
答案 1 :(得分:2)
您可以使用jupyter_spaces
魔术在伪本地名称空间中执行Jupyter Notebook单元。
例如,让我们在“普通”单元格中定义一个变量。
x = 10
假设环境(pip install jupyter-spaces
中有Jupyter Spaces,我们可以加载jupyter_spaces
魔法。
%load_ext jupyter_spaces
最后,我们可以在可以访问globals
变量的特定命名空间中执行单元。
%%space name_of_the_space
y = 2 * x
在此示例中,y
在全局名称空间中将不可用,就好像我们在本地名称空间中执行了该单元格一样。