Python 3.x 调用open terminal和flash out?(窗口)
我一直在尝试这个Python 3.x 调用open terminal和flash out?(窗口),python-3.x,subprocess,Python 3.x,Subprocess,我一直在尝试这个子流程。在我的PC/Windows中调用,想知道如何使它工作?谢谢你的帮助和提示。(我一直在搜索,但找不到任何相关内容…) 这就是我的Python shell中的代码:(在新打开的terminal中键入beef时,一切都正常了。然后终端窗口就闪烁/消失了?) 导入子流程 >>>调用('python check_words.py')) 0 #一个新的窗口终端打开并提示为check_words.py请求一个单词: 这个词是什么 牛肉——我的打字 #窗口终端消失了? #我的python
子流程。在我的PC/Windows中调用,想知道如何使它工作?谢谢你的帮助和提示。(我一直在搜索,但找不到任何相关内容…)
这就是我的Python shell中的代码:(在新打开的terminal
中键入beef
时,一切都正常了。然后终端窗口就闪烁/消失了?)
导入子流程
>>>调用('python check_words.py'))
0
#一个新的窗口终端打开并提示为check_words.py请求一个单词:
这个词是什么
牛肉——我的打字
#窗口终端消失了?
#我的python shell窗口退出代码'0'表示'ok'`
为此,您可以使用两种方法子流程.Popen
或子流程.call
Popen
不会阻塞,允许您在进程运行时与进程交互,或者继续处理Python程序中的其他内容。调用Popen
返回一个Popen对象
调用
不会阻塞。虽然它支持与Popen构造函数相同的所有参数,因此您仍然可以设置进程的输出、环境变量等,但脚本将等待程序完成,并且call
返回表示进程退出状态的代码
from sys import executable
from subprocess import Popen, CREATE_NEW_CONSOLE
Popen([executable, 'check_words.py'], creationflags=CREATE_NEW_CONSOLE)
input('Enter to exit')
或者,您也可以使用字符串参数和关键字参数shell=True
,但这是一种危险的做法:
同样,您也可以尝试调用调用
,这样您会得到相同的结果
Popen('check_words.py',shell = true, creationflags=CREATE_NEW_CONSOLE)