如何确定用户何时在Python中输入内容?

2024-04-19 16:13:06 发布

您现在位置:Python中文网/ 问答频道 /正文

为了练习和乐趣,我正在开发一个连接到在线服务的小型Python聊天客户端。聊天室允许其他用户查看主用户何时键入内容。我想让其他用户看到程序的用户何时正在输入要发送给他们的内容。你知道吗

>>>Stranger: Hello, user.
>>>Hello, how are y...

这可能会将变量hasSomethingEntered设置为True,因为正在键入某些内容

>>>Stranger: Hello, user.
>>>

将变量hasSomethingEntered设置为False,因为用户尚未在输入框中键入任何内容。然后,这个变量将被传递到一个单独的线程中,该线程与服务器进行通信,并让服务器知道客户端的用户正在键入。你知道吗

现在我正在使用Python的input命令来获取用户的聊天记录。有没有可能用Python做我想做的事情?如果没有,你能推荐一种替代的方式或语言,我可以用它来实现同样的目标吗?你知道吗

我希望大家都清楚我在这里要做什么,并提前向你们表示感谢。你知道吗


Tags: 用户程序falsetrue客户端内容hello键入
1条回答
网友
1楼 · 发布于 2024-04-19 16:13:06

您可以一次读取一个字符,使hasSomethingEntered在第一个字符后为true,在行尾后为false。不幸的是,这依赖于平台。你知道吗

窗口:

import msvcrt
one_character= msvcrt.getch()

Unix系统:

import sys, tty
tty.setraw(sys.stdin.fileno())
one_character= sys.stdin.read(1)

在后一种情况下,您很可能希望使用

import sys, termios
previous_mode= termios.tcgetattr( sys.stdin.fileno() )

以及

import sys, termios
termios.tcsetattr(sys.stdin.fileno(),termios.TCSADRAIN, previous_mode )

分别是。你知道吗

相关问题 更多 >