我是Python和Jupiter Lab/Notebook的新手。我开始创建包括大量用户输入((和print((的功能。问题是,随着它们的显示方式,它很快变成了两个分开的列表 - 下面显示了一个简短的示例。
input('1 Yes or No: ')
print('2 Going Along.')
input('3 Yes or No: ')
print('4 Going Along.')
input('5 Yes or No: ')
print('6 Going Along.')
input('7 Yes or No: ')
print('8 Going Along.')
导致:
1 Yes or No: Yes
2 Going Along.
4 Going Along.
6 Going Along.
8 Going Along.
3 Yes or No: No
5 Yes or No: Maybe
7 Yes or No: Not Sure
我有两个问题。(1(输入后是否可以隐藏输入((行?(2(有没有办法以执行它们的顺序显示这些行?
事先感谢您的任何帮助。
虽然我无法重现您的行执行行为,但我尝试编写一个输入函数,该功能在用户输入之后删除了自己
import sys
import msvcrt
def vanishing_input(msg):
sys.stdout.write(msg)
user_input = ''
while True:
x = msvcrt.getch().decode("utf-8")
if x == 'r':
break
sys.stdout.write(x)
user_input += x
print("r" + " " * (len(msg) + len(user_input)) + "r", end='')
return user_input
它完全像普通输入一样使用。
vanishing_input('1 Yes or No: ')
print('2 Going Along.')
当前移动光标或删除角色存在一些问题,但我认为您可以自己改善这种奇怪的事件。