파이썬 기초 문법, 왕초보도 이해하는 핵심 개념 7가지

징검다리총총

10월 15, 2025

파이썬 기초 문법

코딩을 처음 시작하려는데 어디서부터 어떻게 해야 할지 막막하셨나요? 프로그래밍 언어가 너무 어렵게만 느껴져서 시작조차 못 하고 계신 분들이 많습니다. 하지만 걱정하지 마세요. 파이썬 기초 문법은 생각보다 훨씬 직관적이고 쉽습니다.

파이썬 기초 문법은 다른 언어에 비해 문법이 간결하고 읽기 쉬워서 초보자가 배우기에 가장 적합한 언어입니다. 데이터 분석부터 웹 개발, 업무 자동화까지 다양한 분야에서 활용되고 있어요. 지금부터 파이썬의 핵심 문법을 차근차근 살펴보겠습니다.

파이썬 기초 문법 : 변수와 자료형, 프로그래밍의 첫걸음

파이썬 기초 문법에서 변수를 다루는 방법은 다른 언어보다 훨씬 간단합니다. 복잡한 선언 과정 없이 바로 값을 넣어주기만 하면 끝이에요.

기초 개념을 체계적으로 배우고 싶은데 독학이 어렵게 느껴진다면 초보자 맞춤 온라인 강의를 무료 체험해 보시고 자신에게 맞는 학습 방식을 찾아보시길 권합니다.

파이썬은 동적 타이핑 언어라서 변수를 만들 때 자료형을 미리 정해주지 않아도 됩니다. 예를 들어 age = 25라고 쓰면 자동으로 숫자로 인식하고, name = "김철수"라고 쓰면 문자열로 알아서 판단해요. 변수 이름은 문자, 숫자, 밑줄을 사용할 수 있지만 숫자로 시작할 수는 없습니다.

자료형에는 크게 네 가지가 있습니다. 정수형(int)은 1, 100, -5 같은 숫자를 다루고, 실수형(float)은 3.14처럼 소수점이 있는 숫자를 표현합니다. 문자열(str)은 작은따옴표나 큰따옴표로 감싼 텍스트이고, 불리언(bool)은 참(True)과 거짓(False) 두 가지 값만 가집니다.

# 변수 선언 예시
number = 100
price = 1_500_000  # 큰 숫자는 언더스코어로 구분 가능
pi_value = 3.141592
greeting = "안녕하세요"
is_student = True

자료형을 확인하고 싶을 때는 type() 함수를 사용하면 됩니다. 또한 int(), float(), str() 함수로 자료형을 바꿀 수도 있어요. 예를 들어 str(100)은 숫자 100을 문자열 “100”으로 변환합니다.

파이썬 기초 문법 : 연산자로 계산하고 비교하기

파이썬 기초 문법의 연산자는 수학 시간에 배웠던 기호들과 거의 비슷해서 금방 익숙해집니다.

실무에서 자주 쓰이는 연산 패턴이 궁금하다면 현직자 피드백이 포함된 실전 예제를 체험해 보시고 바로 적용 가능한 노하우를 익혀보시기 바랍니다.

산술 연산자는 덧셈(+), 뺄셈(-), 곱셈(*), 나눗셈(/)이 기본입니다. 여기에 더해 나머지 연산자(%)는 나눗셈의 나머지를 구하고, 정수 나눗셈(//) 은 나눗셈 결과에서 소수점을 버린 몫만 가져옵니다. 거듭제곱(**) 연산자는 별도 함수 없이 바로 제곱을 계산할 수 있어 편리해요.

# 연산자 예시
print(10 + 3)   # 13
print(10 % 3)   # 1 (나머지)
print(10 // 3)  # 3 (몫)
print(2 ** 5)   # 32 (2의 5승)

비교 연산자는 두 값을 비교해서 참 또는 거짓을 알려줍니다. 같음(==), 같지 않음(!=), 크다(>), 작다(<) 등이 있죠. 논리 연산자 and, or, not을 사용하면 여러 조건을 한 번에 검사할 수 있습니다. and는 모든 조건이 참일 때만 참을 반환하고, or는 하나라도 참이면 참을 반환합니다.

문자열도 연산이 가능합니다. "안녕" + "하세요"는 “안녕하세요”가 되고, "반복" * 3은 “반복반복반복”이 됩니다. 변수를 문자열에 넣고 싶을 때는 f-string을 사용하면 됩니다. f"제 나이는 {age}살입니다"처럼 중괄호 안에 변수명을 넣으면 자동으로 값이 들어가요.

# 문자열 포맷팅 예시
name = "홍길동"
age = 25
message = f"{name}님은 {age}살입니다."
print(message)  # "홍길동님은 25살입니다."

파이썬 기초 문법의 핵심, 자료구조 이해하기

프로그래밍에서 여러 데이터를 효율적으로 관리하려면 자료구조를 알아야 합니다. 파이썬은 리스트, 튜플, 딕셔너리, 세트 네 가지 주요 자료구조를 제공합니다.

리스트(List) 는 대괄호로 만들며 순서가 있고 수정이 가능합니다. 하나의 리스트 안에 숫자, 문자열 등 다양한 자료형을 섞어서 넣을 수 있어요.

fruits = ["사과", "바나나", "포도"]
fruits.append("딸기")  # 마지막에 추가
fruits.insert(1, "수박")  # 1번 위치에 삽입
fruits.remove("바나나")  # 특정 값 삭제
print(fruits)  # ['사과', '수박', '포도', '딸기']

튜플(Tuple) 은 소괄호로 만들며 리스트와 비슷하지만 한 번 만들면 수정할 수 없습니다. 데이터가 변하지 않아야 할 때 사용하면 안전하고, 리스트보다 메모리도 적게 씁니다.

coordinates = (10, 20)
# coordinates[0] = 15  # 오류 발생! 튜플은 수정 불가

딕셔너리(Dictionary) 는 중괄호를 사용하며 키와 값의 쌍으로 데이터를 저장합니다. 키를 알면 값을 빠르게 찾을 수 있어요.

student = {"이름": "김철수", "나이": 20, "학과": "컴퓨터공학"}
print(student["이름"])  # "김철수"
student["학년"] = 3  # 새로운 항목 추가

세트(Set) 는 중복을 허용하지 않고 순서도 없습니다. 중복 제거나 집합 연산에 유용하며, 합집합, 교집합, 차집합 같은 수학적 연산을 쉽게 할 수 있습니다.

numbers = {1, 2, 3, 3, 4}
print(numbers)  # {1, 2, 3, 4} - 중복 자동 제거

파이썬 기초 문법 : 조건문과 반복문으로 흐름 제어하기

프로그램이 상황에 따라 다르게 동작하려면 조건문과 반복문을 사용해야 합니다.

복잡한 조건 처리가 헷갈린다면 단계별 실습이 포함된 기초 코스를 무료로 시작해 보시고 실전 감각을 자연스럽게 키워보시길 권합니다.

조건문(if, elif, else) 은 특정 조건이 참일 때만 코드를 실행합니다. if 뒤에 조건을 쓰고, 추가 조건은 elif로, 모든 조건이 거짓일 때는 else로 처리합니다.

score = 85

if score >= 90:
    print("A학점")
elif score >= 80:
    print("B학점")
else:
    print("C학점 이하")

for문은 리스트나 문자열의 요소를 하나씩 꺼내며 반복합니다. range() 함수와 함께 쓰면 특정 횟수만큼 반복할 수 있어요.

# 리스트 순회
for fruit in ["사과", "바나나", "포도"]:
    print(fruit)

# 5번 반복
for i in range(5):
    print(f"{i+1}번째 반복")

while문은 조건이 참인 동안 계속 반복합니다. 조건이 거짓이 되면 멈추므로, 무한 반복에 빠지지 않도록 조건을 잘 설정해야 합니다.

count = 0
while count < 5:
    print(f"현재 카운트: {count}")
    count += 1

break는 반복문을 즉시 종료하고, continue는 현재 반복을 건너뛰고 다음 반복으로 넘어갑니다. 이 두 가지를 잘 활용하면 반복문을 유연하게 제어할 수 있습니다.

파이썬 기초 문법 : 함수로 코드 재사용하기

같은 작업을 여러 번 해야 한다면 함수를 만들어 사용하면 됩니다. def 키워드 뒤에 함수 이름을 쓰고, 필요한 작업을 작성한 다음 return으로 결과를 돌려줍니다.

def add_numbers(a, b):
    result = a + b
    return result

sum_value = add_numbers(10, 20)
print(sum_value)  # 30

함수는 여러 개의 입력값(매개변수)을 받을 수 있으며, 기본값을 설정할 수도 있습니다. 기본값이 있으면 해당 매개변수를 생략해도 됩니다.

def greet(name, greeting="안녕하세요"):
    return f"{greeting}, {name}님!"

print(greet("홍길동"))  # "안녕하세요, 홍길동님!"
print(greet("김철수", "반갑습니다"))  # "반갑습니다, 김철수님!"

가변 인자(args) 를 사용하면 개수에 상관없이 여러 값을 받을 수 있고, 키워드 가변 인자(kwargs) 를 쓰면 키-값 쌍으로 데이터를 전달할 수 있습니다. 이런 기능들을 활용하면 더 유연한 함수를 만들 수 있어요.

프로그래밍을 배우다 보면 논리적 사고력을 키우는 것이 중요한데, 정보처리기사 자격증 준비를 통한 체계적인 프로그래밍 학습도 좋은 방법입니다. 기본 문법부터 알고리즘까지 폭넓게 다루기 때문에 실력 향상에 도움이 됩니다.

파이썬 기초 문법 : 객체지향 프로그래밍 기초, 클래스와 객체

파이썬은 객체지향 프로그래밍을 지원하는 언어입니다. 복잡한 프로그램을 만들 때 매우 유용한 개념이에요.

객체지향 개념이 낯설게 느껴진다면 실무 예제가 포함된 중급 과정을 살펴보시고 프로젝트 중심 학습으로 자연스럽게 익혀보시기 바랍니다.

클래스(Class) 는 객체를 만들기 위한 설계도입니다. class 키워드로 정의하며, 속성(변수)과 메서드(함수)를 가질 수 있습니다.

class Student:
    def __init__(self, name, age):
        self.name = name
        self.age = age
    
    def introduce(self):
        return f"안녕하세요, 저는 {self.name}이고 {self.age}살입니다."

# 객체 생성
student1 = Student("김철수", 20)
print(student1.introduce())

__init__ 메서드는 생성자로, 객체를 만들 때 자동으로 실행되어 초기값을 설정합니다. self는 객체 자신을 가리키는 매개변수로, 인스턴스 변수와 메서드에 접근할 때 사용합니다.

상속(Inheritance) 을 사용하면 기존 클래스의 기능을 물려받아 새로운 클래스를 만들 수 있습니다. 부모 클래스의 메서드를 그대로 쓸 수도 있고, 필요하면 다시 정의할 수도 있어요.

class Person:
    def __init__(self, name):
        self.name = name
    
    def greet(self):
        return f"안녕하세요, {self.name}입니다."

class Teacher(Person):  # Person 클래스 상속
    def __init__(self, name, subject):
        super().__init__(name)
        self.subject = subject
    
    def introduce(self):
        return f"{self.name} 선생님이고, {self.subject}를 가르칩니다."

파이썬 기초 문법 : 예외 처리와 파일 다루기

프로그램을 실행하다 보면 예상치 못한 오류가 발생할 수 있습니다. 예외 처리를 사용하면 오류가 발생해도 프로그램이 멈추지 않고 적절히 대응할 수 있어요.

try 블록에는 오류가 발생할 수 있는 코드를 작성하고, except 블록에서 오류 발생 시 실행할 코드를 작성합니다.

try:
    number = int(input("숫자를 입력하세요: "))
    result = 100 / number
    print(f"결과: {result}")
except ValueError:
    print("올바른 숫자를 입력해주세요.")
except ZeroDivisionError:
    print("0으로 나눌 수 없습니다.")
finally:
    print("프로그램을 종료합니다.")

else 블록은 예외가 발생하지 않았을 때 실행되고, finally 블록은 예외 발생 여부와 상관없이 항상 실행됩니다.

파일 입출력은 데이터를 저장하거나 불러올 때 사용합니다. open() 함수로 파일을 열고, 읽기 모드(‘r’), 쓰기 모드(‘w’), 추가 모드(‘a’)를 지정할 수 있습니다.

# 파일 쓰기
with open("example.txt", "w", encoding="utf-8") as file:
    file.write("안녕하세요\n")
    file.write("파이썬 학습 중입니다.")

# 파일 읽기
with open("example.txt", "r", encoding="utf-8") as file:
    content = file.read()
    print(content)

with 구문을 사용하면 파일 작업이 끝난 후 자동으로 파일이 닫혀서 안전하고 편리합니다. read()는 전체 내용을 읽고, readline()은 한 줄씩, readlines()는 모든 줄을 리스트로 반환합니다.

파이썬 기초 문법, 이제 실전으로

지금까지 파이썬의 핵심 문법을 살펴봤습니다. 변수와 자료형, 연산자, 자료구조, 조건문과 반복문, 함수, 클래스, 예외 처리까지 모두 프로그래밍의 기초를 이루는 중요한 개념들이에요.

처음에는 낯설게 느껴질 수 있지만, 직접 코드를 작성하며 연습하다 보면 금방 익숙해집니다. 작은 프로그램부터 만들어보면서 하나씩 적용해보세요. 계산기 프로그램, 할 일 목록 관리, 간단한 게임 등 실생활에서 사용할 수 있는 프로그램을 만들어보면 실력이 빠르게 늘어납니다.

파이썬은 배우기 쉽지만 활용도가 매우 높은 언어입니다. 데이터 분석가, 웹 개발자, 인공지능 엔지니어 등 다양한 분야로 진출할 수 있는 기반이 되죠. 꾸준히 연습하고 실전 프로젝트를 경험하면서 여러분만의 코딩 실력을 쌓아가시기 바랍니다.

파이썬 기초 문법 FAQ

Q1: 프로그래밍을 처음 시작하는 초보자가 파이썬 기초 문법을 완전히 익히는 데 보통 얼마나 걸리나요?

A: 개인의 학습 속도와 투자하는 시간에 따라 다르지만, 기본 문법은 보통 2~4주 정도면 충분히 익힐 수 있습니다. 하루에 1~2시간씩 꾸준히 학습하고 직접 손으로 코드를 작성하며 연습하면 더욱 빠르게 습득할 수 있어요. 중요한 건 단순히 강의를 듣거나 책을 읽는 것이 아니라, 실제로 코드를 타이핑하고 실행해보는 것입니다. 에러를 만나고 해결하는 과정이 반복되면서 자연스럽게 문법이 체득됩니다. 변수, 조건문, 반복문 같은 기초 개념은 1주일 정도면 이해할 수 있고, 함수와 클래스 같은 중급 개념은 추가로 2~3주 정도 연습하면 익숙해집니다. 다만 문법을 아는 것과 실제로 프로그램을 만드는 것은 별개이므로, 문법을 익힌 후에는 작은 프로젝트를 직접 만들어보면서 실전 감각을 키우는 것이 중요합니다.

Q2: 파이썬 프로그래밍을 배우려면 수학을 잘하거나 수학 공식을 많이 알고 있어야 하나요?

A: 파이썬 기초 문법을 배우는 데는 특별한 수학 지식이 전혀 필요하지 않습니다. 초등학교에서 배우는 사칙연산(덧셈, 뺄셈, 곱셈, 나눗셈) 정도만 이해하면 충분해요. 변수에 값을 넣고, 조건에 따라 다른 동작을 하게 만들고, 반복 작업을 자동화하는 것은 수학보다는 논리적 사고력과 관련이 있습니다. 오히려 일상생활에서 문제를 단계별로 나누어 해결하는 능력이 더 중요하죠. 다만 나중에 데이터 분석, 머신러닝, 인공지능 같은 전문 분야로 나아가려면 통계학, 확률론, 선형대수 같은 수학 지식이 도움이 됩니다. 하지만 이것도 파이썬을 어느 정도 다룰 수 있게 된 후에 필요에 따라 배우면 되므로, 수학 때문에 겁먹고 시작을 망설일 필요는 전혀 없습니다. 웹 개발이나 업무 자동화 같은 분야는 고등 수학 없이도 충분히 가능합니다.

Q3: 파이썬 2 버전과 파이썬 3 버전이 있다고 들었는데, 지금 배우려면 어떤 버전을 선택해야 하나요?

A: 지금 시작한다면 무조건 파이썬 3를 배우시기 바랍니다. 파이썬 2는 2020년 1월 1일부로 공식 지원이 완전히 종료되었고, 보안 업데이트나 버그 수정도 더 이상 이루어지지 않습니다. 현재 진행되는 모든 새로운 프로젝트, 라이브러리, 프레임워크는 파이썬 3를 기준으로 개발되고 있어요. 두 버전 사이에는 문법적 차이가 있어서 파이썬 2로 작성된 코드가 파이썬 3에서 작동하지 않는 경우도 있습니다. 예를 들어 print 명령어가 파이썬 2에서는 print "Hello"였지만 파이썬 3에서는 print("Hello")로 바뀌었죠. 대부분의 회사와 개발 커뮤니티가 이미 파이썬 3로 완전히 전환했기 때문에, 취업이나 실무를 고려한다면 파이썬 3를 배우는 것이 현명한 선택입니다. 온라인 강의나 책을 선택할 때도 파이썬 3 기준으로 작성된 최신 자료를 선택하세요.

Q4: 코딩을 하다 보면 에러 메시지가 자주 뜨고 프로그램이 제대로 작동하지 않는데, 이게 정상적인 학습 과정인가요?

A: 네, 매우 정상적인 과정입니다. 초보자는 물론이고 10년 넘게 코딩한 전문 개발자들도 하루에도 수십 번씩 에러를 마주칩니다. 에러는 코딩을 잘못하고 있다는 신호가 아니라, 프로그램이 여러분에게 무엇이 문제인지 알려주는 친절한 안내 메시지예요. 오히려 에러를 많이 만나고 해결하는 과정에서 실력이 빠르게 늘어납니다. 에러 메시지를 잘 읽어보면 어느 줄에서 문제가 발생했는지, 무슨 종류의 오류인지 알려주기 때문에 그 정보를 바탕으로 수정할 수 있어요. 막막하다면 에러 메시지를 그대로 복사해서 구글에 검색해보세요. 같은 문제를 겪은 사람들의 해결 방법을 쉽게 찾을 수 있습니다. 스택오버플로우(Stack Overflow) 같은 개발자 커뮤니티에는 거의 모든 에러에 대한 답변이 있습니다. 에러를 두려워하지 말고 오히려 배움의 기회로 삼으세요. 처음에는 시간이 걸리지만, 같은 종류의 에러를 몇 번 해결하다 보면 자연스럽게 패턴이 보이고 빠르게 고칠 수 있게 됩니다.

Q5: 독학으로 파이썬을 공부하고 있는데 혼자서는 너무 어렵고 막막하게 느껴집니다. 어떻게 극복해야 하나요?

A: 혼자 공부하는 게 힘들다면 온라인 강의, 코딩 커뮤니티, 스터디 그룹을 적극적으로 활용해보세요. 유튜브에는 무료 파이썬 강의가 많고, 인프런이나 코드잇 같은 플랫폼에서는 체계적인 강의를 들을 수 있습니다. 책만 보는 것보다 영상 강의를 따라하면서 배우면 훨씬 이해가 쉬워요. 또한 깃허브(GitHub)나 디스코드(Discord)에는 초보자를 위한 파이썬 스터디 그룹이 많이 있으니 참여해보세요. 질문하고 답변을 주고받으면서 배우면 훨씬 효과적이고, 같은 고민을 하는 동료들과 함께하면 동기부여도 됩니다. 코딩은 결국 문제를 해결하는 과정이므로, 작은 프로젝트부터 시작해서 성취감을 느끼는 것이 중요합니다. 예를 들어 간단한 계산기, 로또 번호 생성기, 할 일 관리 프로그램 같은 실용적인 프로그램을 만들어보세요. 작더라도 내가 직접 만든 프로그램이 작동하는 걸 보면 엄청난 뿌듯함을 느낄 수 있고, 그게 다음 학습의 원동력이 됩니다. 또한 매일 30분이라도 꾸준히 하는 것이 주말에 몰아서 5시간 하는 것보다 훨씬 효과적이니, 작은 목표를 세우고 규칙적으로 실천해보세요.

댓글 남기기