Python脚本能访问交互式会话中定义的变量吗?

8

因此,例如,我正在一个ipython会话中,并且我有一个变量,

var = [3,5,6]

在IPython会话中定义了一些内容,我希望通过运行脚本来处理这些内容,例如:

# my_script
plot(var)

所以我想要打字。
%run my_script.py 

从交互式会话到绘制变量,就好像我已经输入了:

plot(var)

在交互式会话中是否可能实现?如何实现?


如果您在脚本中定义了函数,并希望在会话中调用变量,则可以执行 import scriptname(假设是scriptname.py),然后调用scriptname.plot(var)或类似的函数。 - Tom Hunt
这并不是我想要的。我只想让我的脚本表现得就像它的内容被复制/粘贴到会话中一样。 - capybaralet
1个回答

8
是的,来自运行命令文档:如果您使用%run -i,它将在现有交互式会话的名称空间中运行脚本,而不是清洁的名称空间,因此它将可以访问已定义的变量。
如果您想在标准Python shell中实现类似功能,可以使用execfile运行它:execfile('my_script.py')

在Python中是否有类似的功能(不使用IPython)? - capybaralet

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接