【问题标题】:Python, detect key input on console without showing the input?Python,检测控制台上的键输入而不显示输入?
【发布时间】:2020-03-19 15:56:20
【问题描述】:

我想做的很简单。

我有一个代码可以检测何时按下某个键以继续执行不同的操作。

我做了一个测试版的代码

import keyboard

print('test press a number key')

while True:
    try:
        if keyboard.is_pressed('1'):
            print('1')
            break
        if keyboard.is_pressed('2'):
            print('2')
            break
    except:
        break

input()

这是控制台上的结果。

test press a number key
2
2

它显示了打印功能的“2”,还显示了我输入的“2”。 基本上,有没有办法让它不显示我在控制台上输入的内容而只显示打印?

【问题讨论】:

    标签: python input console keypress


    【解决方案1】:

    在python中使用getpass:

    import getpass
    secret_input = getpass.getpass(prompt="Enter hidden input: ")
    

    在非 Windows 或 unix 系统上,您可以通过以下方式关闭常规输入的回显:

    import os
    os.system("stty -echo")
    

    然后重新打开它:

    os.system("stty echo")
    

    【讨论】:

      猜你喜欢
      • 2011-06-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-03
      • 2013-07-22
      • 2010-12-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多