Python 为同一进程创建新控制台

Python 为同一进程创建新控制台,python,Python,我试图理解如何创建一个新的控制台来打印内容,也就是说,有多个标准输出可用。 在阅读了一些问题后,我只做到了以下几点: from subprocess import Popen, CREATE_NEW_CONSOLE handle = Popen("cmd", stdin=PIPE, creationflags=CREATE_NEW_CONSOLE) i.write(b'hello') 但是这个消息没有出现在新的控制台上 我的选择是什么?尽管我没有找到如何从新控制台直接创建新的SDTout,但我

我试图理解如何创建一个新的控制台来打印内容,也就是说,有多个标准输出可用。 在阅读了一些问题后,我只做到了以下几点:

from subprocess import Popen, CREATE_NEW_CONSOLE
handle = Popen("cmd", stdin=PIPE, creationflags=CREATE_NEW_CONSOLE)
i.write(b'hello')
但是这个消息没有出现在新的控制台上


我的选择是什么?

尽管我没有找到如何从新控制台直接创建新的SDTout,但我还是设法使用进程间通信管道获得了相同的效果

新控制台.py 控制台_factory.py
进一步的改进包括使用循环中的选择将输入从新控制台发送到主进程。

您希望输出到哪里?您希望它与程序的输出交错,还是发送到文件或其他地方?“其他地方”是不是有
.write()
方法的东西?我不清楚您希望看到什么。请检查以下答案:@Kevin我想打印在一个控制台上打印一些内容,在另一个控制台上打印其他内容。
from multiprocessing.connection import Client
import sys

address = '\\\\.\pipe\\new_console'
conn = Client(address)
while True:
    print(conn.recv())
from multiprocessing.connection import Listener
from subprocess import Popen, CREATE_NEW_CONSOLE

address = '\\\\.\pipe\\new_console'
listener = Listener(address)

def new_console():
    Popen("python new_console.py", creationflags=CREATE_NEW_CONSOLE)
    return listener.accept()

c1 = new_console()
c1.send("console 1 ready")
c2 = new_console()
c2.send("console 2 ready")