【问题标题】:Python - Clearing the user input?Python - 清除用户输入?
【发布时间】:2014-06-03 18:22:21
【问题描述】:

我对 python 很陌生,我使用的是 3.3.3 版本。

假设我们有这个脚本:

name = "user"
say = input("Say: ")
print (name, "said:",say)

如果我运行它,输出将是:

Say: mytext
user said: mytext

我想知道,有没有办法清除/删除“说:mytext”? 只是为了让它更清楚一点:

I want:
    user said: hi
    user said: test
    user said: ..

I don't want:
    Say: hi
    user said: hi
    Say: test
    user said: test

就是这样,提前谢谢:)

【问题讨论】:

  • say = input()替换say = input("Say: ")
  • 这是不可能的。看到这个answer

标签: python input echo


【解决方案1】:

您不能简单地告诉input 函数隐藏用户输入。但是你可以使用getpass 函数,它的工作原理都是一样的:

from getpass import getpass

name = "user"
say = getpass(prompt="")
print (name, "said:",say)

记得把prompt参数设置成你想要的值(本例为空字符串),否则会显示Password:\n

【讨论】:

    【解决方案2】:
    name = "user"
    say = input("Say: ")
    sys.stdout.write("\033[F")
    print (name, "said:", say)
    

    第 3 行的代码将光标向上移动一行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-09-12
      • 2019-07-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-30
      • 2013-09-14
      • 1970-01-01
      • 2020-04-25
      相关资源
      最近更新 更多