如果您使用过Ruby on Rails,我正在考虑用户输入的功能
'rails console'
立即获得带有rails的Ruby控制台,并且当前应用已经加载 我想为我正在研究的python程序制作类似的东西,有没有人知道如何键入say,
'python myPythonConsole.py'
并打开一个常规的python解释器,但是我的程序及其所有依赖项已加载?
答案 0 :(得分:6)
如果我理解正确,那么您可能需要python -i myPythonConsole.py
。当脚本完成时,它会为您提供一个控制台,因此您必须在不同的线程中运行您的应用程序。
要在脚本中创建控制台,您可以使用code module。
答案 1 :(得分:2)
如果您正在使用IPython(如果您不是,那么它是一个具有TAB完成和许多快捷方式的令人敬畏的python shell),可以set up profiles,它们基本上是命名配置。
每个配置都可以在启动时导入模块(并执行其他操作)。
答案 2 :(得分:0)
Django使用“shell”命令执行此操作:
./manage.py shell
将打开一个加载了Django设置的Python shell,这样您就可以交互式地导入项目代码。
来源:http://code.djangoproject.com/browser/django/trunk/django/core/management/commands/shell.py
答案 3 :(得分:0)
真正的答案是使用PYTHONSTARTUP环境变量。请参阅教程部分The interactive startup file。
在文件interpreter.py
中进行自定义导入,并进行配置
PYTHONSTARTUP=/path/to/interpreter.py
下次启动Python时,自定义代码将在您放入REPL shell之前执行。
这是我的自定义内容:
import os
import sys
from pathlib import Path
from pprint import pprint
pp = pprint
P = Path
version = ".".join(str(number) for number in sys.version_info[0:3])
print(f"\nCustomized Python interpreter v{version} running from {sys.prefix}")