动态更改cons中的行

2024-04-26 23:15:51 发布

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

我目前正在构建一个小的“聊天机器人”程序,其概念是它应该能够在任何时候异步处理信息和输出。此外,用户可以随时输入。你知道吗

我已经搞定了基本的机械学,但是我很难让它在控制台里看起来好看。我希望它的工作方式如下:

  1. 每次bot输出时,它都应该出现在新的控制台行上。你知道吗
  2. 用户文本输入行应该始终位于控制台的最底部,并且(当然)您应该能够看到您正在键入的内容。你知道吗
  3. 当用户发送输入时,输入的文本应在控制台中显示为新行,并将创建一个新的输入行。你知道吗

这是我目前正在使用的代码,但它有很多缺陷:

def writeToConsole(line,static=False):
  if static:
      sys.stdout.write("\r"+line)
  else:
      print("\r"+line)

当“static”为False时,我希望写一行新行。如果是真的,我希望输入行读作“line”。实际上,所有的static=False行都是在static=True行上写的,但是任何超过新行长度的字符仍然存在。你知道吗

任何帮助实现的效果,我期待将不胜感激。你知道吗


Tags: 用户文本程序信息false概念内容键入