如何通过按任意键而不按 Enter 来结束我的 Python 程序。因此,如果用户键入“c”,程序应该自动结束而不按回车。
到目前为止我的代码:
print("Hi everyone! This is just a quick sample code I made")
print("Press anykey to end the program.")
如何通过按任意键而不按 Enter 来结束我的 Python 程序。因此,如果用户键入“c”,程序应该自动结束而不按回车。
到目前为止我的代码:
print("Hi everyone! This is just a quick sample code I made")
print("Press anykey to end the program.")
通常,人们会使用input('>> ')
(或raw_input('>> ')
使用 Python3)来获取用户命令。但是,这确实需要用户在输入数据后提交数据。因此,对于您的示例,用户将键入 c 然后按 Enter 键。
如果您使用的是 Windows,那么我认为您所追求的可能接近这个答案。此示例导入一个库msvcrt,您可以使用它来检测键盘敲击(使用msvcrt.kbhit()
)。因此,用户键入 c 并且您的代码可以响应该击键,而无需等待 Enter 键。当然,在执行所需的代码(即退出应用程序)之前,您必须处理按键(即检查按钮是否确实是 ac)。
编辑:这个答案假设你有一个while()
循环做事和/或等待用户输入。如下所示:
import msvcrt
print("Hi everyone! This is just a quick sample code I made")
print("Press anykey to end the program.")
while(True):
# Do stuff here.
if msvcrt.kbhit():
# The user entered a key. Check to see if it was a "c".
if (msvcrt.getch() == "c"):
break
elif (msvcrt.getch() == <some other character>):
# Do some other thing.
当然要结束任何键盘敲击的程序,只需去掉检查键是否为“c”的部分。