Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите с .getch()

Радик Маратович Ученик (7), на голосовании 4 дня назад
код выводит 2 принта почему то
метод гетч выводит 2 значения при нажатии стрелки и я полагаю из за этого и 2 принта выводит как это исправить?
Голосование за лучший ответ
S.H.I. Оракул (73235) 1 месяц назад
 while True: 
key = msvcrt.getch()

# Проверка на специальные клавиши (стрелки и др.)
if key in (b'\x00', b'\xe0'):
# Получаем второй байт для специальной клавиши
second_byte = msvcrt.getch()

# Можно обрабатывать стрелки так:
if second_byte == b'H': # Стрелка вверх
print("Стрелка вверх")
# Ваша логика для 'H'
elif second_byte == b'P': # Стрелка вниз
print("Стрелка вниз")
# Ваша логика для 'P'
else:
print(key)
# Обработка обычных клавиш
if key == b'P':
count = count + 1
if count == 3:
count = 0
if key == b'H':
count = count - 1
if count == -1:
count = 2
Похожие вопросы