从shell运行python脚本并保留已定义的模块/数据
我是Python新手,我想知道如何保存从Python shell运行的脚本中的模块和数据 例如:我有一个脚本helloworld.py,它包含:从shell运行python脚本并保留已定义的模块/数据,python,shell,module,terminal,Python,Shell,Module,Terminal,我是Python新手,我想知道如何保存从Python shell运行的脚本中的模块和数据 例如:我有一个脚本helloworld.py,它包含: import numpy as donkey a = 55 然后我想从Python shell中运行该脚本: execfile('helloworld.py') 然而,如果我尝试调用“a”或“驴子”,它们就找不到了。 我怎样才能解决这个问题呢?我假设您正在使用IDLE。IDLE不是Unix意义上的shell。因此,bashshell~/并没有直接的
import numpy as donkey
a = 55
然后我想从Python shell中运行该脚本:
execfile('helloworld.py')
然而,如果我尝试调用“a”或“驴子”,它们就找不到了。
我怎样才能解决这个问题呢?我假设您正在使用IDLE。IDLE不是Unix意义上的shell。因此,bashshell
~/并没有直接的等价物。bash_配置文件
相反,我编辑文件,然后使用F5运行模块。我所有的变量、函数和类都被加载。我可以使用解释性shell进行操作。但是,如果运行另一个模块,则会重置环境,从而丢失第一个模块的定义
execfile()方法仅限于Python 2,如下所述:
为什么要用
execfile
运行它?我还可以使用其他功能吗?我的脚本很大,这就是为什么我想在开始时运行所有东西,然后能够访问我定义的函数/模块等。为什么不直接导入它呢?好的,我应该如何执行导入的脚本?你是什么意思?脚本顶层的所有代码(除非由保护,如果uuuu name\uuuuu=='\uuuu main\uuuu':
)将在导入时执行。