什么是python相当于TCL"源文件"

时间:2017-04-11 16:50:00

标签: python python-3.x tcl

我每天都在使用TCL工作。 当我们编写代码时,我们将其写入文件中 源文件 在TCL解释器中调试语法并修复算法错误。

我们的CAD工具使用tcl,因此我们经常使用DB API来访问数据库对象。

我正在学习python,与我的工作无关。

但我想将python代码写入文件中 "来源文件" 像我们使用TCL一样进入python解释器。

我一直在搜索分配并查看各种方法来让python在文件中执行代码,大多数答案都与执行来自未知来源的代码有关,这里不适用。

导入文件 工作,但我需要使用

检查变量和数据对象 例如,

FILE.myvar。

打字过多,我想说 myvar并获取返回的变量值。

我如何在python交互式解释器中执行此操作?

1 个答案:

答案 0 :(得分:2)

如果你想要这样的功能,这对于交互式探索是有意义的,但几乎不应该在Python程序中使用,我推荐IPython。它是一个备用的交互式Python解释器,具有更丰富的功能集。在IPython中,您正在寻找的特定功能是

%run FILE.py

在新的命名空间中运行该文件,然后在完成后将该命名空间的内容传播到交互式命名空间(因此,交互式定义的内容对于脚本的内容是不可见的,但您仍然可以方便地检查结果),或者

%run -i FILE.py

直接在交互式命名空间中运行该文件。

那就是说,IPython对于这个功能来说有点过分了。要在正在运行的常规交互式解释器中“获取”文件,您可以执行

with open('FILE.py') as f:
    exec(f.read())

或者在新的解释器中运行Python文件并在完成后进入交互模式,你可以做到

python -i FILE.py

在shell中,而不是在Python或IPython会话中。