python - 如何从我的 python 程序中间启动交互式 python/ipython session ?

标签 python ipython

我有一个 python 程序,它首先执行一些任务,然后在某些情况下进入交互模式,用户可以在当前程序范围内访问交互式 python 控制台。现在,我通过调用 code.InteractiveConsole(globals()).interact('') 使用代码模块来执行此操作(参见 http://docs.python.org/2/library/code.html)。

我的问题是生成的交互式控制台缺少我通常使用标准 python 控制台(即您通过在终端中键入“python”获得的控制台)获得的一些功能,例如记住上一个命令等。是否有一种在我的 python 程序中间获得相同交互式控制台的方法,或者更好的是 ipython 的交互式控制台?

最佳答案

只需使用 IPython.embed()您当前正在使用 code.InteractiveConsole(globals()).interact('') 的位置。

不过,请确保在执行此操作之前导入了 IPython:

import IPython
# lots of code
# even more code
IPython.embed()

关于python - 如何从我的 python 程序中间启动交互式 python/ipython session ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21421207/

相关文章:

python - 如何使 argparse.RawTextHelpFormatter 不折叠连续的空行

python - 如何使用一个主键将不同的 CSV 文件合并到一个新的 CSV 文件中

python - RuntimeError : Model class users. models.User 未声明显式 app_label 并且不在 INSTALLED_APPS 中的应用程序中

python - 使用导入模块的IPython交互式运行

zsh 类似 iPython 的补全?

python - IPython Notebook session 中的多个目录和/或子目录?

python - 我如何在 Python 中找到最长的字符串?

javascript - 根据Python字典中的数据绘制条形图

python - %matplotlib 行魔术导致 Python 脚本中的 SyntaxError

python - ipdb 中的后续 "list"命令