检测“结束:按下python3

时间:2018-05-17 00:05:10

标签: python-3.5

我试图从用户无限输入,直到用户按下键盘上的结束键。输入可以是任何数据类型。例如下面的代码我想在键盘上按下结束时退出while循环。

    l = []
while 1:
    v = input("Enter the list element")
    l.append(v)
    if int(v)==1:  # instead of checking 1 I want to check for "end" key press 
        break

print("the list is %s" %(l))

如果有人可以建议退出按键组合,例如ctrl + e等,那就太棒了。

2 个答案:

答案 0 :(得分:0)

您可以使用pynput library来检测按下了哪个键 我认为Input()无法检测到功能键(enterbackspace除外等)。

他们有pynput.keyboard.Listener收听密钥

Additional Info

答案 1 :(得分:0)

您可以使用异常处理。

try:
     While 1:
           # your code

except KeyboardInterrupt:
      print("Exit")
      exit()

此代码将循环,直到您给出键盘中断(ctrl + c).. 有关更多信息,请参阅:https://www.python-course.eu/exception_handling.php