[python] PySimpleGUI에서 주식 포트폴리오 관리 도구 만들기

이번 포스트에서는 PySimpleGUI를 사용하여 주식 포트폴리오 관리 도구를 만드는 방법에 대해 알아보겠습니다. PySimpleGUI는 Python에서 GUI를 작성하는데 사용되는 간단하고 직관적인 라이브러리입니다. 주식 포트폴리오 관리 도구는 사용자가 보유한 주식의 정보를 입력하고 관리할 수 있는 기능을 제공하는 프로그램입니다.

PySimpleGUI 소개

PySimpleGUI는 Python의 다양한 GUI 프레임워크를 사용해 사용자 인터페이스를 만드는 작업을 단순화하는 라이브러리입니다. Tkinter, PyQt, WxPython 등의 다양한 백엔드를 지원하며, 간단한 문법으로 GUI 애플리케이션을 작성할 수 있습니다.

설치

PySimpleGUI를 설치하기 위해서는 pip를 사용하면 간단하게 설치할 수 있습니다. 아래의 명령어를 터미널에서 실행하여 PySimpleGUI를 설치하세요.

pip install PySimpleGUI

주식 포트폴리오 관리 도구 만들기

주식 포트폴리오 관리 도구를 만들기 위해서는 다음과 같은 기능을 포함해야 합니다.

  1. 사용자가 주식 정보를 입력할 수 있는 입력 필드
  2. 주식 정보를 저장하고 관리하는 버튼
  3. 저장된 주식 정보를 표시하는 목록 형태의 출력창

이제 이러한 기능을 PySimpleGUI를 사용하여 구현해보겠습니다.

import PySimpleGUI as sg

# 윈도우 레이아웃 정의
layout = [
    [sg.Text('주식명'), sg.Input(key='stock_name')],
    [sg.Text('보유량'), sg.Input(key='quantity')],
    [sg.Button('추가'), sg.Button('삭제')],
    [sg.Listbox(values=[], key='stock_list', size=(30, 10))]
]

# 윈도우 생성
window = sg.Window('주식 포트폴리오 관리 도구', layout)

# 주식 리스트 초기화
stocks = []

while True:
    event, values = window.read()

    if event == sg.WINDOW_CLOSED:
        break

    if event == '추가':
        stock_name = values['stock_name']
        quantity = values['quantity']

        stocks.append((stock_name, quantity))
        window['stock_list'].update(values=[f'{name} - {quantity}' for name, quantity in stocks])

    if event == '삭제':
        selected_stock = values['stock_list'][0]

        if selected_stock:
            stock_name, quantity = selected_stock.split(' - ')
            stocks.remove((stock_name, quantity))
            window['stock_list'].update(values=[f'{name} - {quantity}' for name, quantity in stocks])

# 윈도우 닫기
window.close()

위의 예제 코드는 주식 포트폴리오 관리 도구의 기본적인 기능을 구현한 코드입니다. sg.Textsg.Input을 사용하여 주식명과 보유량을 입력할 수 있는 입력 필드를 추가하고, sg.Button을 사용하여 추가와 삭제 버튼을 생성합니다. 또한, sg.Listbox를 사용하여 저장된 주식 정보를 표시하는 목록 형태의 출력창을 생성합니다.

layout 리스트에 위젯들을 정의한 뒤, sg.Window를 사용하여 윈도우를 생성합니다. 그리고 while 루프를 통해 윈도우 이벤트를 처리하고, eventvalues를 사용하여 사용자 입력값을 가져옵니다. 추가 버튼을 클릭하여 주식 정보를 저장하고, 삭제 버튼을 클릭하여 저장된 주식 정보를 삭제하는 기능을 구현하였습니다.

결론

이번 포스트에서는 PySimpleGUI를 사용하여 주식 포트폴리오 관리 도구를 만드는 방법에 대해 알아보았습니다. PySimpleGUI는 간단한 문법으로 다양한 GUI 애플리케이션을 쉽게 작성할 수 있는 라이브러리입니다. 주식 포트폴리오 관리 도구를 만들어보면서 PySimpleGUI의 기본적인 사용법을 익혀보세요.

참고자료