목차
허리 사이즈표 인치 계산법 계산기 만들기: Python으로 구현하고 exe로 배포하기
온라인 쇼핑몰에서 의류를 구매할 때, 특히 바지나 치마를 고르기 위해 자신의 허리 사이즈표를 정확히 알아야 합니다. 허리둘레(cm)만으로는 바지 사이즈를 인치(inch) 단위로 표기한 정보와 매칭하기 어려운데요, 이를 간편하게 계산해 주는 ‘허리 인치 계산기’를 Python으로 직접 만들어 보고, 최종 결과물을 Windows 실행 파일(.exe)로 배포하는 방법까지 알아보겠습니다.
이 글을 통해 개발 환경 구축부터 코드 작성, exe 컴파일, 배포 준비 과정을 순서대로 학습해 보세요.
허리 인치 계산기 Python으로 구현하기
먼저 허리 인치 계산법을 알아야 합니다. 허리 인치 계산법 자체는 별로 어렵지 않습니다. 인치에 2.54곱하면 cm가 되고, cm에서 2.54를 나누면 허리 인치가 나옵니다. 하지만, 보통 바지를 모든 cm별로는 만들어 둘 수 없기 때문에 인치 단위로 기성복이 제작되고 이를 다시 44, 55, 66 같은 허리사이즈로 만들어 둡니다. 이런 허리 사이즈표는 이미 숱하게 나와 있고 복잡하지도 않으므로 별도로 제작할 필요는 없습니다만, 계산기는 파이썬을 배우는 과정으로써 제작해보기로 하겠습니다.
개발 환경 준비
- Python 설치
- Python 3.8 이상 권장
- 공식 웹사이트에서 다운로드 및 설치
- 패키지 관리자 확인
python --version pip --version
코드 작성
# waist_inch_calculator.py
def cm_to_inch(cm: float) -> float:
"""
센티미터(cm)를 인치(inch)로 변환하는 함수
1 inch = 2.54 cm
"""
return cm / 2.54
def inch_to_cm(inch: float) -> float:
"""
인치(inch)를 센티미터(cm)로 변환하는 함수
"""
return inch * 2.54
def main():
print("=== 허리 인치 계산기 ===")
while True:
mode = input("원하는 변환 모드 선택 (1: cm → inch, 2: inch → cm, 0: 종료): ")
if mode == "0":
print("프로그램을 종료합니다.")
break
try:
if mode == "1":
cm = float(input("허리둘레(cm)를 입력하세요: "))
inch = cm_to_inch(cm)
print(f"{cm:.1f} cm = {inch:.2f} inch\n")
elif mode == "2":
inch = float(input("허리 인치(inch)를 입력하세요: "))
cm = inch_to_cm(inch)
print(f"{inch:.2f} inch = {cm:.1f} cm\n")
else:
print("잘못된 입력입니다. 다시 시도하세요.\n")
except ValueError:
print("숫자를 정확히 입력해주세요.\n")
if __name__ == "__main__":
main()
주요 함수 설명
cm_to_inch(cm)
- 입력된 허리둘레(cm)를 2.54로 나누어 인치 단위로 변환
inch_to_cm(inch)
- 입력된 허리 인치(inch)를 2.54를 곱해 cm 단위로 변환
main()
- 사용자 입력에 따라 모드를 선택하고, 예외 처리를 통해 안정적으로 입력값을 처리
실행 및 테스트
터미널(명령프롬프트)에서 다음 명령으로 실행해 보세요.
python waist_inch_calculator.py
- 1번 모드 선택 후 예시:
허리둘레(cm)를 입력하세요: 76 76.0 cm = 29.92 inch
- 2번 모드 선택 후 예시:
허리 인치(inch)를 입력하세요: 30 30.00 inch = 76.2 cm
하지만 이렇게 작성된 파이썬 프로그램은 터미널에서 동작해야 하므로 의미가 없겠죠? 그래서 우리는 이것을 다시 GUI 환경으로 제작해야 합니다.
허리 인치 계산기 GUI 제작 및 EXE 배포 방법
온라인에서 의류를 구매할 때, 특히 바지나 치마는 허리 사이즈를 정확히 알아야만 실망 없는 쇼핑이 가능합니다. 이전에는 콘솔 기반으로 허리둘레(cm) ↔ 인치(inch) 변환기를 만들어 보았지만, 반복적인 입력 과정이 다소 번거로웠을 수 있습니다. 이번 포스팅에서는 GUI(그래픽 사용자 인터페이스)를 활용해 직관적인 ‘허리 인치 계산기’를 제작하는 방법과, 완성된 프로그램을 Windows 실행 파일(. exe)로 컴파일해 배포하는 전 과정을 상세히 안내해 드리겠습니다.
GUI 계산기 구현
Tkinter 개요
- Tkinter: Python에 기본 포함된 GUI 툴킷으로, Windows·macOS·Linux에서 모두 사용 가능
- 장점: 추가 설치 없이 바로 사용 가능, 위젯(widget) 구성과 이벤트 처리 API가 단순함
- 주요 위젯
Tk()
: 최상위 윈도우 생성Label
: 텍스트 출력Entry
: 사용자 입력란Button
: 클릭 버튼StringVar()
,DoubleVar()
: 데이터 바인딩
코드 작성 및 설명
아래 코드를 waist_calc_gui.py
파일로 저장하세요.
import tkinter as tk
from tkinter import messagebox
def cm_to_inch(cm: float) -> float:
return cm / 2.54
def inch_to_cm(inch: float) -> float:
return inch * 2.54
def convert_cm_to_inch():
try:
cm = float(var_input.get())
inch = cm_to_inch(cm)
var_result.set(f"{cm:.1f} cm → {inch:.2f} inch")
except ValueError:
messagebox.showerror("입력 오류", "숫자를 정확히 입력해주세요.")
def convert_inch_to_cm():
try:
inch = float(var_input.get())
cm = inch_to_cm(inch)
var_result.set(f"{inch:.2f} inch → {cm:.1f} cm")
except ValueError:
messagebox.showerror("입력 오류", "숫자를 정확히 입력해주세요.")
# 윈도우 생성
root = tk.Tk()
root.title("허리 인치 계산기")
root.resizable(False, False)
root.geometry("300x180")
# 변수 선언
var_input = tk.StringVar()
var_result = tk.StringVar()
# 레이아웃 구성
lbl_prompt = tk.Label(root, text="값 입력 (cm 또는 inch):")
lbl_prompt.pack(pady=(20, 0))
entry_input = tk.Entry(root, textvariable=var_input, width=20)
entry_input.pack(pady=5)
frm_buttons = tk.Frame(root)
frm_buttons.pack(pady=10)
btn_cm2inch = tk.Button(frm_buttons, text="cm → inch", width=10, command=convert_cm_to_inch)
btn_cm2inch.grid(row=0, column=0, padx=5)
btn_inch2cm = tk.Button(frm_buttons, text="inch → cm", width=10, command=convert_inch_to_cm)
btn_inch2cm.grid(row=0, column=1, padx=5)
lbl_result = tk.Label(root, textvariable=var_result, font=("Arial", 12), fg="blue")
lbl_result.pack(pady=(10, 0))
# 메인 루프 실행
root.mainloop()
- 윈도우 설정
root.resizable(False, False)
: 창 크기 고정root.geometry("300x180")
: 창 크기 지정
- 변환 함수
convert_cm_to_inch()
,convert_inch_to_cm()
: 버튼 클릭 시 입력값을 읽고 변환 결과를StringVar
에 반영- 예외 처리로
ValueError
발생 시messagebox.showerror()
로 경고 팝업 표시
- 레이아웃
pack()
과grid()
를 조합해 심플하면서도 직관적인 배치 구성
EXE 파일로 컴파일하기
PyInstaller 설치
pip install pyinstaller
단일 파일(.exe) 생성
cmd
또는 PowerShell에서 프로젝트 폴더로 이동 후 다음 명령을 실행하세요.
pyinstaller --onefile --windowed --name WaistCalcGUI waist_calc_gui.py
--onefile
: 모든 의존성을 단일 실행 파일로 묶음--windowed
: 콘솔 창 없이 GUI 전용 실행--name WaistCalcGUI
: 생성될 EXE 파일명 지정
아이콘 적용 (선택)
아이콘 파일(waist.ico
)을 준비한 후, 다음과 같이 옵션을 추가합니다. 귀찮으니까 그냥 두면 파이썬이 임의로 아이콘을 제공합니다.
pyinstaller --onefile --windowed --name WaistCalcGUI --icon=waist.ico waist_calc_gui.py
배포 폴더 구성
- 컴파일 후
dist/
폴더 내WaistCalcGUI.exe
파일 확인 README.txt
와 함께 압축하여 배포 권장
release/
├─ WaistCalcGUI.exe
└─ README.txt
README.txt
예시:
허리 인치 계산기 GUI v1.0
사용법:
1. WaistCalcGUI.exe 실행
2. 변환할 값을 입력 후 버튼 클릭
지원 OS: Windows 7 이상
문의: support@example.com
Tkinter를 이용한 GUI 허리 인치 계산기를 통해 사용자 경험을 대폭 개선할 수 있으며, PyInstaller를 활용해 간편하게 Windows용 실행 파일로 배포할 수 있습니다. 이 과정을 응용하면 다양한 단위 변환기나 간단한 유틸리티를 GUI 형태로 제작·배포할 수 있으니, 본 튜토리얼을 참고하여 나만의 데스크톱 앱 제작에 도전해 보시기 바랍니다.
결론
지금까지 허리둘레(cm)를 인치(inch)로 변환해 주는 간단한 Python 기반 계산기 코드를 작성하고, PyInstaller를 활용해 Windows 실행 파일(.exe)로 패키징 하는 과정을 살펴보았습니다. 이 과정을 통해 자신의 개발 환경에 맞춰 Python 스크립트를 데스크톱 프로그램처럼 배포할 수 있으니, 다양한 유틸리티 제작에 응용해 보시기 바랍니다.
'IT 모바일 Gear Up' 카테고리의 다른 글
윈도우 단축키 모음: 창 최대화·축소·창 이동 (0) | 2025.04.25 |
---|---|
삼성에어컨 에러코드 E4, C4, e1, cf (0) | 2025.04.13 |
화이트 아웃 서바이벌 쿠폰, 4월 New Gift Code 및 PC 교환방법 (0) | 2025.04.09 |
화이트아웃 서바이벌 지심 공략 비율, wos 지심탐험 비율 (0) | 2025.04.07 |
카타고 바둑 다운로드, 설치 (0) | 2025.03.30 |
댓글