외국인과 대화하려면 그 나라 말을 배워야 하듯, 컴퓨터에게 일을 시키려면 컴퓨터와의 대화를 가능하게 하는 언어를 배워야 한다. 그것이 바로 프로그래밍 언어다. 그중에서도 가장 배우기 쉽고 강력한 언어인 파이썬을 알아보자.
컴퓨터와 소프트웨어¶
컴퓨터는 PC, 노트북, 스마트폰 등 우리 주변의 다양한 전자기기를 말한다. 이 기계들은 혼자서는 아무것도 할 수 없는 빈 깡통과 같다. 이 기계에 생명을 불어넣어 주는 것이 바로 OS라 불리는 운영체제와 소프트웨어다.
운영체제: 윈도우, 맥OS, 안드로이드, iOS처럼 컴퓨터의 하드웨어를 관리하고 기본적으로 작동하게 만드는 시스템이다. 영어로 Operating System이며 흔히 OS라 줄여서 불린다.
애플리케이션 또는 앱: 카카오톡, 유튜브, 엑셀처럼 특정한 목적을 위해 만들어진 프로그램이다.
개발자들이 흔히 혼용하는 용어들을 정리하면 다음과 같다.
| 용어 | 설명 |
|---|---|
| 소프트웨어Software | 컴퓨터를 움직이는 모든 프로그램의 총칭 |
| 프로그램Program | 특정 작업을 수행하는 명령어들의 집합 |
| 소스 코드Source Code | 프로그래밍 언어로 작성된 실제 텍스트 파일 |
| 코딩Coding | 코드를 작성하는 행위 |
왜 파이썬인가?¶
세상에는 파이썬 이외에 C, C++, C#, 자바Java, 자바스크립트JavaScript, 러스트Rust 등 수많은 프로그래밍 언어가 있다. 그중 전 세계적으로 파이썬이 인기를 끄는 이유를 살펴보자.
첫째, 사람의 언어와 닮았다.
파이썬은 문법이 매우 직관적이고 간결하다. 마치 영어 문장을 읽는 것처럼 코드를 읽을 수 있어 초보자가 배우기에 가장 적합하다. 예를 들어 컴퓨터 화면에 “Hello Python” 이라는 문장을 출력하는 코드를 세 언어에 대해 비교해보자.
C 언어: 준비 과정이 필요하고 코드가 길다.
#include <stdio.h> int main() { printf("Hello Python\n"); return 0; }자바: 역시 복잡하고 길다.
public class Main { public static void main(String[] args) { System.out.println("Hello Python"); } }파이썬: 한 줄이면 충분하다.
print("Hello Python")
둘째, 활용 범위가 넓다.
파이썬은 범용 프로그래밍 언어General-purpose programming language라고 불린다. 즉, 컴퓨터로 다룰 수 있는 모든 영역에서 활용된다.
데이터 분석 & 인공지능AI: 챗GPT, 알파고 같은 AI는 대부분 파이썬으로 만들어진다.
웹 사이트와 서버 개발: 인스타그램, 유튜브 같은 서비스도 파이썬을 많이 사용한다.
업무 자동화: 엑셀 파일 정리, 이메일 자동 발송 등 반복 업무를 파이썬으로 자동화할 수 있다.
과학 및 공학 연산: NASA의 우주 연구나 기상청의 날씨 예측 등 복잡한 과학 계산에 사용된다.
게임 및 GUI 개발: 나만의 게임을 만들거나, 계산기 같은 PC용 프로그램을 개발할 수 있다.
셋째, 강력한 도구(라이브러리)를 많이 제공한다.
전 세계의 수많은 개발자가 만들어 놓은 유용한 도구(라이브러리)들이 풍부하다. 이 도구들을 활용하여 훌륭한 프로그램을 손쉽게 만들 수 있다.
파이썬 코드 실행 방식¶
파이썬은 인터프리터Interpreter 언어다. 인터프리터는 우리가 작성한 코드를 한 줄씩 번역하여 컴퓨터가 실행할 수 있도록 전달한다. 직역하여 해석기라고 할 수도 있지만 파이썬 코드 실행을 담당한다는 의미에서 실행기라고 부르는 게 보다 적절하다.
반면에 C 언어, 자바 등은 컴파일러Compiler 언어다. 작성된 소스 코드 전체가 먼저 컴파일러에 의해 기계어로 번역된 후에야 코드가 실행될 수 있다.
두 종류의 언어를 구분하는 특성을 정리하면 다음과 같다.
| 인터프리터 언어 | 컴파일러 언어 |
|---|---|
| 파이썬, 자바스크립트 등 | C, C++, C#, 자바 등 |
| 코드를 한 줄씩 읽어가며 즉시 실행 | 소스 코드 전체를 기계어로 미리 번역한 후 실행 |
| 코드 수정 후 바로 결과 확인 가능 | 코드를 수정할 때마다 다시 번역 과정 필요 |
| 학습과 개발 속도 빠름 | 실행 속도 빠름 |
파이썬 맛보기¶
아래 코드는 비밀번호를 맞추는 간단한 프로그램이다.
파이썬 코드가 얼마나 직관적인지 확인해볼 수 있다.
코드 각각의 줄에서 샵 기호 # 뒤에 오는 문장은 왼쪽에 위치한 코드를 설명하는 주석이다.
주석은 코드 실행과 무관함에 주의한다.
secret = 13 # 비밀 숫자
guess = 17 # 내가 추측한 숫자
if guess == secret: # 만약 추측한 숫자가 비밀 숫자와 같다면
print("맞았습니다!") # "맞았습니다!" 출력
else: # 그렇지 않다면
print("틀렸습니다!") # "틀렸습니다!" 출력위 코드는 guess 변수가 가리키는 값이 secret 변수가 가리키는 값과 다르면 "틀렸습니다!"를 출력하고, 같으면 "맞았습니다!"를 출력한다.
여기서는 guess가 17이고 secret이 13이므로 "틀렸습니다!"가 출력된다.
이처럼 프로그래밍을 전혀 모르는 사람도 대략적으로 의미를 파악할 수 있다.
파이썬 인기도¶
개발자 커뮤니티에서 파이썬의 인기는 압도적이다. 프로그래밍 언어 순위를 매기는 TIOBE 인덱스에서 파이썬은 수년째 1위를 지키고 있다.

프로그래밍 학습법¶
프로그래밍에 입문하는 사람들을 위해 권장하는 학습법 세 가지를 덧붙인다.
많이 따라하기: 설명, 예제 또는 문제에 언급된 코드를 최대한 많이 활용한다. 코딩을 자주 많이 하는 것이 절대적으로 중요하다.
직접 입력하기: 눈으로만 보는 코드는 내 것이 되지 않는다. 직접 키보드를 두드리고, 오타를 내고, 에러를 고치는 과정에서 실력이 향상된다. 좋은 키보드를 하나 마련하는 것도 추천한다.
나만의 AI튜터 활용: 모르는 내용이 나오면 검색이나 AI에게 물어보는 것을 두려워하지 말아야 한다. 특히 챗GPT, Gemini와 같은 AI를 적극적으로 활용하면 학습 속도를 비약적으로 높일 수 있다.
개념 질문: “파이썬의 변수가 뭐야? 초등학생도 이해할 수 있게 설명해줘.”
에러 해결: 에러 메시지를 그대로 복사해서 "이 에러가 왜 났고, 어떻게 고쳐야 해?"라고 물어본다.
코드 분석: 이해가 안 가는 코드는 "이 코드가 무슨 일을 하는지 한 줄씩 설명해줘"라고 요청한다.
주의 사항: AI가 작성해준 코드를 이해하지 못한 채 복사해서 붙여넣기만 하면 실력이 늘지 않는다. 반드시 코드를 읽고 이해할 수 있어야 한다.