请问,如何隐藏命令行输入?

请问,如何隐藏命令行输入?

RT
比如说将命令行的输入显示为*号。


[Copy to clipboard] [ - ]
CODE:
import sys

try:
    from msvcrt import getch
except ImportError:
    ''' we're not on Windows, so we try the Unix-like approach '''
    def getch( ):
        import tty, termios
        fd = sys.stdin.fileno( )
        old_settings = termios.tcgetattr(fd)
        try:
            tty.setraw(fd)
            ch = sys.stdin.read(1)
        finally:
            termios.tcsetattr(fd, termios.TCSADRAIN, old_settings)
        return ch
sys.stdout.write("input:")
strArr=[]
while True:
      tmp=getch()
      if tmp!='\r':
         strArr.append(tmp)
         sys.stdout.write("*")
      else:break
strArr=''.join(strArr)

print "\n\n%s"%strArr

非常管用,谢谢
如果是要取得密码之类的,有一个getpass模块可以使用。