При программировании на Python порой возникает необходимость приостановить выполнение программы до тех пор, пока пользователь не нажмёт какую-либо клавишу. Классическим примером может быть игра или приложение, где необходимо дождаться реакции пользователя, чтобы продолжить выполнение кода.
Существуют различные способы реализации этого функционала в Python. Однако, стоит отметить, что некоторые из них могут работать только в определенных операционных системах.
Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.
Использование модуля msvcrt
(только для Windows)
В операционной системе Windows можно использовать модуль msvcrt
. Этот модуль предоставляет доступ к различным полезным функциям и переменным, доступным в стандартной библиотеке Microsoft Visual C Runtime. Для ожидания нажатия клавиши в коде Python можно использовать функцию msvcrt.getch()
.
import msvcrt print("Ожидание нажатия клавиши...") msvcrt.getch() print("Клавиша нажата!")
Использование модуля keyboard
Универсальным решением и для Windows, и для Unix-подобных систем (Linux, MacOS) является использование стороннего модуля keyboard
. Этот модуль позволяет управлять клавиатурой, не зависимо от операционной системы. Для ожидания нажатия клавиши можно использовать функцию keyboard.read_key()
.
import keyboard print("Ожидание нажатия клавиши...") keyboard.read_key() print("Клавиша нажата!")
Перед использованием модуля keyboard
необходимо установить его. Это можно сделать с помощью команды pip install keyboard
в командной строке.
На курсе Skypro «Python-разработчик» освоите основные инструменты программирования, получите опыт на реальных проектах и сможете стартовать в профессии уверенным новичком. Преподаватели — практикующие программисты с большим опытом, а в центре карьеры помогут составить цепляющее резюме и подготовиться к собеседованию.
Использование модуля getch
Еще одним универсальным решением является использование модуля getch
. Этот модуль предоставляет единую функцию getch.getch()
, которая читает один символ с клавиатуры, не требуя нажатия Enter.
import getch print("Ожидание нажатия клавиши...") getch.getch() print("Клавиша нажата!")
Подобно модулю keyboard
, модуль getch
также не входит в стандартную библиотеку Python и перед использованием его необходимо установить с помощью команды pip install getch
в командной строке.
Используя эти методы, можно легко реализовать ожидание нажатия клавиши в Python.
Добавить комментарий