我正在尝试找出如何在linux上配置“python交互式shell”(即在终端中键入python
时执行的程序)。我期待配置诸如着色ps [12],制表符完成(?)等等的东西。
我知道ipython / jupyter,bpython等,但我不想要花哨的(不必要的?)东西,只有一些彩色终端:)
是否可以有一种配置文件?
答案 0 :(得分:1)
您可以设置environment variable PYTHONSTARTUP
:
如果这是可读文件的名称,则在以交互模式显示第一个提示之前,将执行该文件中的Python命令。该文件在执行交互式命令的同一命名空间中执行,以便在交互式会话中无需限定地使用在其中定义或导入的对象。您还可以更改此文件中的提示
sys.ps1
和sys.ps2
以及摘要sys.__interactivehook__
。
要设置环境变量,请转到终端并键入:
$ export PYTHONSTARTUP=/path/to/my/python/file.py
($
是提示,而不是您应该键入的内容。)
由于这不会持续超出当前会话,您可能希望将其放在.bashrc文件中。
在你的/path/to/my/file.py中,你可以做任何你想要的Python东西。例如,您可能希望主要和辅助提示为绿色:
import sys
color = "\x1b[32m{}\x1b[m"
sys.ps1 = color.format(sys.ps1)
sys.ps2 = color.format(sys.ps2)
# We don't want variables to be around in our interactive sessions.
del color
del sys
你可以在那里做任何你想做的事。在我的作品中,我设置了一个写入atexit的历史文件。这样, Up 可以超出当前会话。我还添加了制表符。