【发布时间】:2013-12-30 00:35:06
【问题描述】:
我想知道如何在无需按 Enter 的情况下接受输入。我在网上搜索了一些关于 raw_input 的信息,但我认为在 python 3.0 到来后它已经过时了。 有时,我会在整个程序上运行一个 while 循环,因为我想问用户: 继续? (是/否):
例如考虑代码:
import random
d = input('Toss coin? (y/n): ')
while d != 'n' and d!= 'N':
c = random.randint(1,2)
if c == 1:
print('HEADS!')
else:
print('TAILS!')
d = input('Toss coin? (y/n): ')
但我只是想通过不让用户每次都按 Enter 来为我的程序添加更多闪光。只需按 y 或 n,程序就会相应地循环或中断。
好的,这是新代码:
import random
import msvcrt
d = input('Toss coin? (y/n): ')
while d != 'n' and d!= 'N':
c = random.randint(1,2)
if c == 1:
print('HEADS!')
else:
print('TAILS!')
print('Toss coin? (y/n): ')
d = msvcrt.getwch()
但是 msvcrt 还是不行
【问题讨论】:
标签: python-3.x while-loop user-input