Python 터미널 그래픽 애플리케이션 curses 사용하기
오늘은 Python 터미널 그래픽 애플리케이션을 만들 수 있는 표준 라이브러리인 curses를 적용해보려 합니다.
curses 설치
파이썬에 기본적으로 탑제되어 있습니다.
hello, world
from curses import wrapper
curses에서 wrapper를 가져옵니다.
def main(screen):
screen.clear()
화면을 지울 수 있습니다.
screen.addstr(0, 0, "hello,world!")
0번째 줄의 0번째 위치에 문자를 출력할 수 있습니다.
screen.refresh()
화면을 새로 고칠 수 있습니다.
screen.getkey()
키 입력을 받을 때까지 기다립니다.
wrapper(main)
curses를 초기화하고, 함수를 불러올 수 있습니다.
input
import curses
curses를 가져옵니다.
def main(screen):
screen.clear()
screen.addstr(0, 0, 'Hello World')
화면을 지우고, 0번째 줄의 0번째 위치에 문자를 출력할 수 있습니다.
while True:
c = screen.getch()
screen.addstr(1, 0, str(c))
문자의 입력을 받아서 1번째 줄의 0번째 위치에 문자를 출력할 수 있습니다.
curses.wrapper(main)
curses를 초기화하고, 함수를 불러올 수 있습니다.
textpad
import curses
from curses.textpad import Textbox, rectangle
curses와 curses의 textpad를 가져옵니다.
def main(screen):
screen.addstr(0, 0, "Enter text")
0번째 줄의 0번째에 문자열을 출력할 수 있습니다.
edit_win = curses.newwin(5, 30, 2, 1)
rectangle(screen, 1, 0, 1 + 5 + 1, 1 + 30 + 1)
새로운 윈도우를 만들고, 직사각형을 만들 수 있습니다.
screen.refresh()
box = Textbox(edit_win)
box.edit()
화면을 새로 고치고, 새로 만든 윈도우에 텍스트박스 객체를 반환할 수 있습니다.
message = box.gather()
return message
윈도우의 작성된 내용을 문자열로 가져옵니다.
msg = curses.wrapper(main)
curses를 초기화하고, 함수를 불러올 수 있습니다.
Written on May 11, 2019