레슨 2 · 파이썬 기초 문법
변수는 데이터를 담아두는 이름 있는 상자예요.
변수이름 = 값 형태로 값을 저장해요.
name = '지수'
age = 13문자열은 텍스트 데이터예요. 작은따옴표(') 또는 큰따옴표(")로 감싸요.
greeting = '안녕하세요!'
message = "파이썬은 재미있어요."first = '파이'
second = '썬'
print(first + second) # 파이썬
print('ha' * 3) # hahaha문자열의 각 문자에는 **인덱스(번호)**가 있어요. 첫 번째 문자의 인덱스는 0이에요! (1이 아닙니다)
문 자: P y t h o n
인덱스: 0 1 2 3 4 5
word = 'Python'
print(word[0]) # P ← 인덱스 0이 첫 번째!
print(word[1]) # y
print(word[-1]) # n ← 음수 인덱스: 뒤에서부터
print(word[-2]) # o⚠️ 주의! 파이썬 인덱스는 0부터 시작해요.
[시작:끝] 형태로 문자열의 일부를 잘라낼 수 있어요. (끝 인덱스는 포함 안 됨)
word = 'Python'
print(word[0:3]) # Pyt (0,1,2번 인덱스)
print(word[2:]) # thon (2번부터 끝까지)
print(word[:3]) # Pyt (처음부터 2번까지)
print(word[-3:]) # hon (뒤에서 3번째부터)text = ' Hello, World! '
print(text.upper()) # ' HELLO, WORLD! '
print(text.lower()) # ' hello, world! '
print(text.strip()) # 'Hello, World!' ← 앞뒤 공백 제거
print(text.replace('World', '파이썬')) # ' Hello, 파이썬! '
print('파이썬'.startswith('파')) # True
print('파이썬'.endswith('썬')) # True
print(','.join(['사과', '바나나', '딸기'])) # '사과,바나나,딸기'len() 함수로 문자열의 길이를 알 수 있어요.
name = '지수'
print(len(name)) # 2name = '지수'
age = 13
print('이름: {}, 나이: {}살'.format(name, age))실행 결과:
이름: 지수, 나이: 13살
파이썬 3.6 이후에는 f-string이 더 간결하고 빠른 방법이에요.
name = '지수'
age = 13
print(f'이름: {name}, 나이: {age}살')
# 수식도 바로 계산 가능
print(f'10년 후 나이: {age + 10}살')실행 결과:
이름: 지수, 나이: 13살
10년 후 나이: 23살
💡 f-string 사용 권장: 문자열 앞에
f를 붙이고 변수는{}로 감싸요.
문자열은 input()으로 받은 값을 그대로 사용하면 돼요. (숫자와 달리 int() 변환이 필요 없어요!)
name = input()
print(f'안녕하세요, {name}님!')입력:
지수
출력:
안녕하세요, 지수님!
공백으로 구분된 단어를 각각 다른 변수에 저장하고 싶을 때는 split()으로 나눠서 변수에 나눠 담아요.
first, last = input().split()
print(f'성: {last}, 이름: {first}')입력:
지수 김
출력:
성: 김, 이름: 지수
⚠️
split()이 나눈 값의 개수와 변수 개수가 맞아야 해요. 몇 개가 들어올지 모를 때는 리스트로 받아요. (자세한 내용은 '리스트' 단원에서 다뤄요.)
쉼표(,)나 콜론(:) 등 공백이 아닌 다른 문자로 값이 구분될 때는 split()의 괄호 안에 구분자를 직접 지정해요.
date = input().split('-')
print(date) # ['2026', '06', '08']
year, month, day = input().split('-')
print(f'{year}년 {month}월 {day}일')입력:
2026-06-08
출력:
['2026', '06', '08']
2026년 06월 08일
💡
split()을 괄호 없이 쓰면 공백(스페이스, 탭, 줄바꿈 등) 기준으로 나누고,split('구분자')처럼 문자를 넣으면 그 문자를 기준으로 나눠요.
| 구분 형태 | 예시 입력 | 받는 방법 |
|---|---|---|
| 공백으로 구분 | 지수 김 | input().split() |
| 쉼표로 구분 | 사과,바나나,딸기 | input().split(',') |
| 다른 문자로 구분 | 2026-06-08 | input().split('-') |
띄어쓰기를 포함한 문장 전체를 하나의 문자열로 받고 싶을 때는 split() 없이 input()을 그대로 사용해요.
sentence = input()
print(f'입력한 문장: "{sentence}"')
print(f'길이: {len(sentence)}자')입력:
나는 파이썬을 공부하고 있어요
출력:
입력한 문장: "나는 파이썬을 공부하고 있어요"
길이: 16자
| 입력 형태 | 예시 입력 | 받는 방법 |
|---|---|---|
| 단어 1개 | 지수 | input() |
| 단어 여러 개 (변수로 각각) | 지수 김 | a, b = input().split() |
| 문장 (공백 포함 한 줄) | 나는 파이썬을 공부하고 있어요 | input() |
변수이름 = 값[시작:끝] (끝은 포함 안 됨).format() 또는 f-string (더 현대적)