问题描述
是否可以运行生成图形(或数字)的Python代码并保持这些数字打开,即使在程序结束后也是如此?
目前,当我在代码末尾使用show()
时,程序执行$ python somecode.py
停止,直到我关闭图形(或数字)。
从而使终端无法使用。
我是否需要为每个数字分配不同的作业ID,以便数字与主程序分开运行? 如果是这样我怎么能做到这一点?
当想要以不同的输入执行程序有限次数并且不想将每个结果图存储为(单独的)文件时,这种需要变得明显。 这对于快速比较很方便。
一个明显的解决方案是在单独的终端会话中运行该程序。
1楼
不确定它是否是你所追求的,但你当然可以使用&
在你的终端中启动python
作为后台进程。
像这样:
$ python somecode.py &
$ ... # control is returned here immediately
它将在后台启动python
并立即将控制权返回给终端。
过了一会儿,绘图窗口将出现而不会阻塞终端。
您可以通过这种方式触发多个python
实例,从而在保持终端可用的同时打开多个绘图窗口。
请注意,您也可以在启动后将进程移动到后台。 后
$ python somecode.py
终端被阻止,但您可以在终端中按ctrl-z
,然后按bg
在后台进程中打开进程。
这当然是一般的shell功能,与Python无关。
2楼
为了继续显示图像,python仍然必须正在运行。 如果python仍在运行,那么在标准用法中,您将无法使用终端。
通常,使用这种类型的工作流程可以使用 ,您可以在其中轻松运行所需的程序/代码/脚本,然后继续使用交互式解释器。
替代方案包括:
-
-
- 在运行该过程。