python pside6 怎么跟自己程序交互
时间: 2023-02-08 21:53:26 浏览: 82
Python中有许多不同的库可以用于与程序交互。其中一种常用的方法是使用 "subprocess" 库来调用和控制其他程序。例如,可以使用 "subprocess.run()" 函数来运行另一个程序,并获取它的输出。
```
import subprocess
result = subprocess.run(['program_name', 'arg1', 'arg2'], capture_output=True, text=True)
print(result.stdout)
```
上面的代码中,"program_name" 是要调用的程序的名称,"arg1" 和 "arg2" 是传递给该程序的参数。"capture_output=True" 参数表示要捕获程序的输出,"text=True" 表示输出应该是文本格式。运行后,程序的输出将存储在 "result.stdout" 中。
如果你想交互的更细粒度的控制进程,可以使用 subprocess.Popen() 产生一个进程对象,通过这个对象可以很方便地读写程序的stdin,stdout,stderr.
```
import subprocess
p = subprocess.Popen(['program_name', 'arg1', 'arg2'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
stdout, stderr = p.communicate()
print(stdout)
print(stderr)
```
上面代码中,subprocess.PIPE表示进程间的管道连接,使用p.communicate()可以读取stdout,stderr。
不过还有其他的库如pexpect可以更直接的进行交互.