[python] 파이썬에서 특정 키로 프로그램 종료하기
파이썬 프로그램을 개발하다보면 특정 조건이 충족되었을 때 프로그램을 종료해야하는 경우가 있습니다. 이때 특정 키를 누르면 프로그램이 정상적으로 종료되도록 구현할 수 있습니다.
Ctrl+C를 사용한 프로그램 종료
가장 간단하고 보편적인 방법은 터미널에서 Ctrl+C
키를 누르는 것입니다. KeyboardInterrupt
예외가 발생되므로 이를 처리하는 코드를 작성하면 됩니다.
try:
while True:
# 여기에 프로그램 실행 코드 작성
pass
except KeyboardInterrupt:
print("프로그램을 종료합니다.")
# 추가적인 정리 작업 등을 수행할 수 있습니다.
이렇게 실행하면 터미널에서 Ctrl+C
를 누를 때까지 프로그램이 계속 실행되며, Ctrl+C
를 누르면 KeyboardInterrupt
예외가 발생하여 except
블록이 실행됩니다. 여기에서는 단순히 메시지를 출력하고 프로그램을 종료하는 예시를 보여줬지만, 이후에 추가적인 작업을 수행할 수도 있습니다.
특정 키 입력을 감지하여 프로그램 종료
Ctrl+C
외에도 다른 특정 키를 사용하여 프로그램을 종료하고 싶을 때에는 keyboard
라이브러리를 사용할 수 있습니다. 이 라이브러리는 파이썬에서 키 입력을 처리하는 데 도움이 되는 기능을 제공합니다.
먼저, keyboard
라이브러리를 설치해야합니다. 터미널에서 다음 명령을 실행하여 설치할 수 있습니다.
pip install keyboard
다음 코드는 keyboard
라이브러리를 사용하여 q
키를 누르면 프로그램이 종료되도록 하는 예제입니다.
import keyboard
def exit_program():
print("프로그램을 종료합니다.")
# 추가적인 정리 작업 등을 수행할 수 있습니다.
exit(0)
keyboard.on_press_key("q", lambda _: exit_program())
while True:
# 여기에 프로그램 실행 코드 작성
pass
위 코드에서 keyboard.on_press_key()
함수를 사용하여 q
키를 감지하는 이벤트 핸들러를 등록합니다. 이벤트가 발생하면 exit_program()
함수가 호출되어 프로그램이 종료됩니다.