python将print输出到父进程
时间: 2023-07-09 17:21:01 浏览: 84
在Python中,可以使用`multiprocessing`模块来创建子进程并与父进程进行通信。如果您希望在子进程中将`print`输出发送到父进程,可以使用`multiprocessing.Pipe()`方法创建一对管道对象,然后将其中一个管道对象传递给子进程,在子进程中将`print`输出写入管道对象,父进程可以从管道对象中读取数据并输出。
以下是一个示例代码,演示了如何将子进程中的`print`输出发送到父进程:
```python
import multiprocessing
def child_process(conn):
print("This is child process")
conn.send("Hello from child process!")
if __name__ == '__main__':
parent_conn, child_conn = multiprocessing.Pipe()
p = multiprocessing.Process(target=child_process, args=(child_conn,))
p.start()
print("This is parent process")
print(parent_conn.recv())
p.join()
```
在上面的代码中,我们创建了一个子进程,并将`child_conn`管道对象传递给该进程。在子进程中,我们使用`conn.send()`方法将字符串消息发送到管道对象中。在父进程中,我们使用`parent_conn.recv()`方法阻塞等待接收管道对象中的数据,并将其输出到控制台。