如何创建一个打开iterpreter shell的Python脚本

时间:2017-04-30 20:40:32

标签: python-3.x

我不知道如何向Google提出此问题,但我想编写一个Python脚本,在执行时,它只会导入一些模块,并公开普通的Python解释器shell,以便用户可以输入命令并使用导入的模块。

实现这一目标的最不实用的方法是什么,最好不得不写一个文件?

1 个答案:

答案 0 :(得分:0)

如果您使用的是Unix系统,只需告诉您的脚本在完成后打开交互式Python解释器:

#!/usr/bin/env python -i

import re

对于仅支持Python的解决方案,您可以使用code模块,将调用者的环境传递给它,以便继承定义。如果您不介意继承code模块本身,它可以像这样简单:

import code
import re  # etc.

code.interact(local=globals())

演示:

>>> import code
>>> import re
>>> code.interact(local=globals())
Python 3.4.4 |Anaconda custom (x86_64)| (default, Jun 15 2016, 15:48:32) 
[GCC 4.2.1 Compatible Apple LLVM 4.2 (clang-425.0.28)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> dir()
['__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'code', 're']
>>>