在python中打开新窗口(如vim)

问题描述:

我正在开发一个项目,但我想知道是否有可能在linux shell(如vim)中打开一个新窗口,以便我有干净的空间对于程序的输出和输入 谢谢在python中打开新窗口(如vim)

+0

Python不这样做。在某些终端中,您可以按Ctrl + Shift + T打开一个新选项卡,并且还有GNU屏幕实用程序,但您无法在Python中执行此操作。 – zondo

+0

是的,这是可能的,因为你可以从Python执行命令。但是没有更多的上下文(在运行时,在编辑Python源代码时,在测试期间对于干净的io等),我不能说明具体如何。如果不加精确地说,你的问题是*不清楚*。 –

+0

@SergeBallesta当你执行这个脚本时,让我们说当你执行这样的命令时:python3 main.py –

这个问题跟Python没有关系。您只需打开一个新的终端窗口或使用像Tmux这样的插件来打开运行不同应用程序的多个窗口。您可能对Vim-Tmux workflow感兴趣。基本上,您可以垂直打开两个窗格,在左窗格中打开vim,然后在右窗格上执行您的脚本。

$ tmux 
$ vim module.py 
<C-b> % # this is a shortcut 
<C-b> right-arrow 
$python module.py 

有点不清楚最好的答案是什么,因为我怀疑你不确定你真正想要什么。这里有一些可能性:

如果您只想弹出一个显示当前运行命令输出的新终端,则可以使用Subprocess模块​​创建一个新终端,例如xterm -e command(其中command是显示输出的print语句)。 优点:它很简单,并使用内置的功能,再加上您可以轻松显示命令历史记录。 缺点:您一次只能显示一个命令的输出,您必须关闭终端才能继续。 (有一种来回切换的方式,但并不容易)。

另一种方法是用两个文本控件和一个运行命令的按钮来构建自己的gui。这相当容易,Python自带TKinter。您需要阅读文档并学习一些教程。 优点:您可以通过界面进行控制。 缺点:你需要加快gui工具包的速度 - 但这是一个很好的投资!

我建议你考虑一下你想采取的方法,然后如果你仍然需要帮助,回来一个更具体的问题。