2012-09-27 5 views
-3

мне было интересно, как я могу получить ключ вдавленным питонаКак получить нажатие клавиши?

Я пробовал делать:

import msvcrt as keys 
while True: 
    key = keys.getch() 
    if key == "a": 
     print("You have pressed a") 

Кто-нибудь знает, как это исправить?

+7

Вы действительно не сказали, в чем проблема. –

+3

Этот код работает так, как я ожидал. Как вы ожидаете, что это сработает? –

+0

Для чего это? Если вы планируете более продвинутый ввод/рисование/обновление консоли, взгляните на библиотеку curses. В зависимости от того, что вы делаете, было бы проще писать в неконсольном приложении, таком как pygame/pyglet, даже если вы в основном обрабатываете текст. (Как современный roguelike) – ninMonkey

ответ

0

Это может помочь вам:

import msvcrt 
while True: 
    if msvcrt.kbhit() and msvcrt.getch() == chr(97): # chr(97) = 'a' 
     print("You have pressed a") 

Примечания: код и мой код не будут работать во многом Python IDE,! Вам нужно выполнить файл python, например. в командном окне.

+1

Это похоже на код OP, за исключением того, что он займет 100% процессор. И зачем писать 'chr (97)', когда он такой же, как '' a''? – interjay

+0

Спасибо, Il проверить, если это работает –

+0

:-(Он не работал –

Смежные вопросы