我正试着自学用python编写代码,但遇到了一个问题。在
我使用python的subprocess模块来执行一个.bat文件,但是这个进程似乎在bat文件上卡住了。python代码当前如下所示:
import getpass
username = getpass.getuser()
from subprocess import Popen
p = Popen("hidefolder.bat", cwd=r"C:\Users\%s\Desktop" % username)
stdout, stderr = p.communicate()
import sys
sys.exit()
bat文件如下所示:
^{pr2}$有没有一种方法可以终止子进程,即使python脚本在继续之前等待子进程终止?或者是从子进程中的问题开始? 提前谢谢你。在
您需要将
subprocess.PIPE
用于stdout
和stderr
,否则无法通过Popen.communicate
获取它们,这就是进程被卡住的原因。在相关问题 更多 >
编程相关推荐