AD JB Toolbox 01

Python 강좌 / 숫자 자료형과 연산: 정수·실수·형 변환

Python의 int는 정수를, float는 부동소수점 수를 나타냅니다. 금액처럼 정확한 자릿수 관리가 중요한 값은 정수 단위로 저장하거나 Decimal을 사용하고, float 계산이 십진 소수를 항상 정확히 나타내지는 못한다는 점을 이해해야 합니다.

숫자와 연산자의 의미

표현 의미 결과 예
7 / 2 나누기 3.5
7 // 2 바닥 나눗셈 3
7 % 2 나머지 1
2 ** 3 거듭제곱 8

바닥 나눗셈은 0 쪽으로 자르는 연산이 아닙니다. -7 // 2는 -4이고 int(-3.5)는 -3입니다. 우선순위가 헷갈리면 괄호를 사용해 계산 의도를 드러냅니다. Python 정수는 고정된 32비트 범위를 전제로 하지 않지만 실제 사용 가능한 메모리에는 제한이 있습니다.

관련 동작과 지원 조건은 숫자 자료형과 연산: 정수·실수·형 변환 관련 공식 문서에서 확인할 수 있습니다.

전체 예제와 실행 결과

별도의 실습 폴더에서 아래 파일을 UTF-8로 저장합니다. 가상환경을 선택한 터미널에서 python numeric_demo.py 명령으로 실행합니다. macOS·Ubuntu에서 가상환경을 사용하지 않는 경우 명령 이름을 python3으로 바꿉니다.

numeric_demo.py 파일의 전체 내용입니다.

from decimal import Decimal

print(7 / 2, 7 // 2, 7 % 2)
print(-7 // 2, int(-3.5))
print(0.1 + 0.2 == 0.3)
print(Decimal("0.1") + Decimal("0.2"))
price_won = 3500
print(price_won * 3)

예상 결과는 다음과 같습니다.

3.5 3 1
-4 -3
False
0.3
10500

변환과 정확도 선택하기

int("3500")는 숫자 모양의 문자열을 정수로 바꿉니다. int("3.5")는 실패하고 int(3.5)는 소수 부분을 잘라냅니다. float("3.5")는 부동소수점 수를 만듭니다. 표시 자릿수를 줄이는 형식 지정은 저장값 자체를 정확한 십진수로 바꾸지 않습니다.

Decimal은 십진 계산을 지원하는 표준 라이브러리의 자료형입니다. Decimal(0.1)처럼 float에서 만들면 이미 생긴 표현 오차가 전달될 수 있으므로 Decimal("0.1")처럼 문자열로 생성합니다. 정밀도와 반올림 규칙도 업무 조건에 맞춰 정해야 합니다.

금액 계산에서 확인할 경계

원 단위 지출이라면 3500 같은 정수로 저장하면 단순합니다. 여러 통화나 소수 단위가 있으면 통화 단위와 반올림 정책을 데이터와 함께 정합니다. 숫자 자료형 하나로 모든 정책이 자동 해결되지는 않습니다.

  1. -7 // 2를 -7 / 2와 비교하고 차이를 설명합니다.
  2. 분모를 0으로 바꾸면 ZeroDivisionError가 생깁니다. 원래 2로 되돌립니다.
  3. 문자열 "3500원"을 int로 변환해 실패를 확인하고 입력 형식 검증이 필요함을 기록합니다.
같은 카테고리의 다른 글
Python 강좌 / Python이란? 특징과 활용 분야

Python 강좌 / Python이란? 특징과 활용 분야

Python의 역할과 활용 범위를 이해하고 소스 파일·터미널·인터프리터를 구분합니다. 간단한 합산 예제를 실행하며 강좌의 실습 방식을 익힐 수 있습니다.

Python 강좌 / Windows에 Python 설치하고 실행 확인하기

Python 강좌 / Windows에 Python 설치하고 실행 확인하기

공식 Python Install Manager로 Windows 실행 환경을 준비합니다. 기존 설치 확인, 프로젝트용 가상환경 생성, 명령 충돌과 실행 경로 점검까지 설명합니다.

Python 강좌 / 가상환경 만들기와 pip로 패키지 관리하기

Python 강좌 / 가상환경 만들기와 pip로 패키지 관리하기

venv로 프로젝트 환경을 분리하고 python -m pip로 패키지를 관리합니다. 활성화, 버전 기록, 재설치와 설치 환경 불일치 해결 기준을 익힙니다.

Python 강좌 / VS Code에서 Python 코드 작성하고 실행하기

Python 강좌 / VS Code에서 Python 코드 작성하고 실행하기

VS Code에서 프로젝트 폴더와 가상환경 인터프리터를 연결합니다. 실행 경로 확인, 간단한 디버깅과 패키지 환경 불일치 해결 방법을 설명합니다.

Python 강좌 / macOS·Ubuntu에서 Python 실행 환경 준비하기

Python 강좌 / macOS·Ubuntu에서 Python 실행 환경 준비하기

macOS와 Ubuntu의 Python 설치 경로를 확인하고 개발용 가상환경을 만듭니다. 시스템 Python 보호, 배포판 버전 차이와 설치 오류의 확인 기준을 함께 다룹니다.

Python 강좌 / 변수·주석·입력과 출력으로 첫 프로그램 만들기

Python 강좌 / 변수·주석·입력과 출력으로 첫 프로그램 만들기

변수 대입과 주석, input·print의 역할을 익힙니다. 입력 문자열을 금액으로 변환하고 f-string으로 출력하며 잘못된 입력의 원인을 확인합니다.

Python 강좌 / 문자열 다루기: 인덱싱·슬라이싱·메서드·f-string

Python 강좌 / 문자열 다루기: 인덱싱·슬라이싱·메서드·f-string

문자열의 인덱싱·슬라이싱과 strip·split·join·f-string을 익힙니다. 원본이 변경되지 않는 특성과 CSV·SQL 처리에서 구분할 점을 설명합니다.

Python 강좌 / 숫자 자료형과 연산: 정수·실수·형 변환

Python 강좌 / 숫자 자료형과 연산: 정수·실수·형 변환

int·float·Decimal의 차이와 나눗셈·형 변환을 설명합니다. 음수와 십진 소수 예제로 금액 계산에서 정확도를 선택하는 방법을 확인합니다.