【问题标题】:How to keep the terminal updating while waiting for an input?如何在等待输入时保持终端更新?
【发布时间】:2021-02-24 21:05:28
【问题描述】:
我正在创建一个聊天服务器,并希望聊天在您输入时实时更新,而不是每次按 Enter 时更新,因为输入导致我的代码挂起。
目前我有:
def send():
message = input()
#Send message
def receive():
while unread_messages > 0:
#Recive messages
while True:
send()
receive()
是否可以在后台不断运行消息接收过程而不必每次都等待用户输入?
【问题讨论】:
标签:
python
multithreading
input
【解决方案1】:
您可以使用线程或异步。在下面的示例中,我使用线程运行一个函数,该函数在程序等待用户输入时在终端中打印一条消息(“嘿”)。
from threading import Thread
class Receiver(Thread):
def __init__ (self, msg):
Thread.__init__(self)
self.message = msg
def run(self):
while(True):
print(self.message)
delay(1)
a = Receiver("heey")
a.start()
a = input("write your message")