왜 Python인가
학습 목표
- Python의 핵심 설계 철학과 특징을 설명할 수 있다
- AI/ML 생태계에서 Python이 표준 언어가 된 이유를 이해한다
- Python과 다른 프로그래밍 언어의 차이점을 비교할 수 있다
Python이란
Python은 1991년 귀도 반 로섬(Guido van Rossum)이 만든 범용 프로그래밍 언어(General-purpose Programming Language)입니다. “읽기 쉬운 코드”를 최우선 가치로 설계되었으며, 이 철학은import this로 확인할 수 있는 The Zen of Python에 담겨 있습니다.
핵심 특징
1. 가독성 중심 설계
Python은 들여쓰기(Indentation)로 코드 블록을 구분합니다. 중괄호({})가 아닌 공백으로 구조를 표현하므로, 누가 작성하든 일관된 형태의 코드가 됩니다.
2. 동적 타이핑(Dynamic Typing)
변수 선언 시 타입을 명시하지 않습니다. 실행 시점에 타입이 결정되므로 빠른 프로토타이핑에 유리합니다.3. 인터프리터 언어
Python은 소스 코드를 한 줄씩 해석하여 실행합니다. 컴파일 단계가 없어 코드 수정과 실행 사이클이 빠릅니다.4. 멀티 패러다임
절차적, 객체지향, 함수형 프로그래밍 스타일을 모두 지원합니다.5. 배터리 포함(Batteries Included)
표준 라이브러리(Standard Library)만으로도 파일 처리, 네트워크, 데이터 직렬화 등 대부분의 작업을 수행할 수 있습니다.다른 언어와의 비교
| 특성 | Python | Java | C++ | JavaScript |
|---|---|---|---|---|
| 타이핑 | 동적 | 정적 | 정적 | 동적 |
| 실행 방식 | 인터프리터 | JVM 컴파일 | 네이티브 컴파일 | 인터프리터/JIT |
| 학습 난이도 | 낮음 | 중간 | 높음 | 중간 |
| 실행 속도 | 느림 | 빠름 | 매우 빠름 | 중간 |
| ML/DL 생태계 | 최고 | 제한적 | 백엔드 | 제한적 |
| 주요 용도 | AI/ML, 자동화, 웹 | 엔터프라이즈 | 시스템, 게임 | 웹 프론트엔드 |
AI/ML 생태계에서의 위치
Python이 AI/ML의 사실상 표준(de facto standard)이 된 이유는 크게 세 가지입니다.1. 압도적인 라이브러리 생태계
2. 글루 언어(Glue Language)로서의 역할
Python의 실행 속도는 C/C++보다 느리지만, 핵심 연산은 C/C++/CUDA로 작성된 라이브러리가 처리합니다. Python은 이들을 연결하는 “접착제” 역할을 합니다.3. 연구와 산업의 공통 언어
학계의 논문 구현 코드가 대부분 Python이며, 산업계의 ML 파이프라인도 Python 기반입니다. 연구 결과를 실무에 적용하는 과정에서 언어 전환이 필요 없습니다.Python 버전과 현재 상태
| 버전 | 주요 특징 | 상태 |
|---|---|---|
| 3.10 | match-case 구문, 향상된 에러 메시지 | 유지보수 |
| 3.11 | 10-60% 성능 향상, 예외 그룹 | 유지보수 |
| 3.12 | 타입 힌트 개선, f-string 중첩 | 현재 안정 |
| 3.13 | GIL 해제 실험(Free-threaded), JIT 컴파일러 | 최신 |
이 교육 과정은 Python 3.10 이상을 기준으로 작성되었습니다. match-case 등 3.10+ 문법을 활용합니다.
Python 2는 왜 안 쓰나요?
Python 2는 왜 안 쓰나요?
Python 2는 2020년 1월 1일부로 공식 지원이 종료(EOL)되었습니다. 보안 패치도 더 이상 제공되지 않으므로, 모든 새 프로젝트는 Python 3을 사용해야 합니다.
Python이 느린데 AI/ML에서 괜찮나요?
Python이 느린데 AI/ML에서 괜찮나요?
Python 자체는 느리지만, NumPy/PyTorch 등의 핵심 연산은 C/C++/CUDA로 구현되어 있어 성능 문제가 없습니다. Python은 이들을 호출하고 조합하는 역할만 합니다.
어떤 IDE/에디터를 추천하나요?
어떤 IDE/에디터를 추천하나요?
VS Code + Python 확장이 가장 범용적입니다. Jupyter Notebook/Lab은 데이터 분석과 실험에, PyCharm은 대규모 프로젝트에 적합합니다.
체크리스트
- Python의 핵심 설계 철학(가독성, 동적 타이핑, 멀티 패러다임)을 설명할 수 있다
- Python이 AI/ML 생태계의 표준 언어인 이유를 세 가지 이상 설명할 수 있다
- Python과 다른 언어의 장단점을 비교할 수 있다

