按Enter后,输入将停留在其中。例如:
myName = input()
print("My name is:" + myName)
输出将是:
Alex
My name is:Alex
但是我只想显示后者。我尝试使用getpass,但是有必要在键入时显示文本,而getpass隐藏它。我该怎么办?
答案 0 :(得分:3)
import sys
myName = input()
sys.stdout.write("\033[F") # Cursor up one line
print("My name is:" + myName)
答案 1 :(得分:2)
根据平台,您可以在打印之前将光标向上移动一行:
myName = input()
print("\x1B[F\x1B[2K", end="")
print("My name is:" + myName)
中间行将光标向上移动并在POSIX终端中清除该行。
在Windows上,它变得越来越复杂,您需要一些库来调用Windows API来实现此目的。
答案 2 :(得分:0)
将两个语句合而为一!
myName = input("My Name is: ")
这样,将为Alex输入打印“我的名字是Alex”。另外,Alex被分配给“ myName”。
编辑:显然,这只是一种解决方法,不能专门回答您的问题。