从shell运行python脚本并保留定义的模块/数据



我是Python的新手,我想知道如何保留从Python shell运行的脚本中的模块和数据?

例如:我有脚本 helloworld.py,它包含:

import numpy as donkey
a = 55

然后我想从我的 Python shell 运行该脚本:

execfile('helloworld.py')

但是,如果我尝试呼唤"a"或"驴",则找不到它们。我该如何解决这个问题?

我假设你使用的是IDLE。 IDLE 不是 Unix 意义上的 shell。所以没有直接等价物的 bash 外壳. ~/.bash_profile.

相反,我编辑文件,然后使用 F5 运行模块。我所有的变量、函数和类都被加载了。我可以使用解释性外壳来操纵。但是,如果我运行另一个模块,则会重置环境,从而丢失第一个模块的定义。

execfile() 方法仅限于 Python 2,如下所述:如何从 IDLE 命令行运行 Python 脚本?

最新更新