파이썬에서 데이터를 다룰 때 가장 자주 사용하는 것 중 하나가 문자열(String)이에요.
이번 시간에는 문자열을 잘게 나누는 슬라이싱(Slicing)과 여러 문자열을 하나로 붙이는 합치기(Concatenation) 방법을 배워볼 거예요.
문자 하나하나에 접근하는 방법부터 응용까지, 직접 따라 해보면서 익혀보세요.
목차
- 문자열이란 무엇인가요?
- 문자열 슬라이싱 (slicing) – 일부만 잘라내기
- 문자열 합치기 (concatenation)
- 문자열 반복하기
- 문자열 합치기 시 숫자 주의!
- 문자열 조작 예제 종합
- 문자열 슬라이싱 예제 요약표
- 끝으로 – 문자열을 자르고 붙일 수 있어야 실력이 늘어요
- 문자열 슬라이싱 & 합치기 – 연습문제 10개
파이썬 초급 문자열 다루기 (슬라이싱, 합치기)
문자열이란 무엇인가요?
문자열은 "문자" 또는 '문자'로 감싸서 표현하는 글자 데이터예요.
파이썬에서는 작은따옴표와 큰따옴표 둘 다 사용할 수 있어요.

text1 = "Hello"
text2 = 'Python'
각 문자는 인덱스를 통해 위치를 가지고 있어요.
예를 들어 "Hello"는 아래처럼 구성돼요:
| 문자 | H | e | l | l | o |
|---|---|---|---|---|---|
| 인덱스 | 0 | 1 | 2 | 3 | 4 |
문자열 슬라이싱 (slicing) – 일부만 잘라내기
문자열에서 일부 문자만 가져오고 싶을 때 슬라이싱을 사용해요.

text = "Hello Python"
print(text[0:5]) # 결과: Hello
print(text[6:]) # 결과: Python
text[start:end]는 start 위치부터 end 전까지 가져와요.text[:5]는 처음부터 5번째 앞까지,text[6:]은 6번째부터 끝까지 가져오는 식이에요.
▶ 마이너스 인덱스를 쓰면 뒤에서부터 셀 수도 있어요!
print(text[-6:]) # 결과: Python
문자열 합치기 (concatenation)
두 개 이상의 문자열을 + 기호로 이어 붙일 수 있어요.

first = "Hello"
second = "World"
result = first + " " + second
print(result) # 결과: Hello World
문자열과 문자열은 그대로 붙일 수 있고, 공백도 문자열로 따로 넣어줘야 해요.
문자열 반복하기
* 기호를 사용하면 문자열을 반복할 수 있어요.

print("Hi! " * 3) # 결과: Hi! Hi! Hi!
문자열 조작에서 반복은 UI 출력이나 꾸미기에도 많이 활용돼요.
문자열 합치기 시 숫자 주의!
문자열과 숫자는 그냥 더할 수 없어요. str() 함수를 사용해서 변환해야 해요.

age = 25
print("나이는 " + str(age) + "세입니다.")
문자열 조작 예제 종합

greeting = "Hello"
name = input("이름을 입력하세요: ")
print(greeting + ", " + name + "!") # 예: Hello, 지민!
실전에서 이렇게 문자열을 입력값과 합쳐 출력하는 경우가 많아요.
문자열 슬라이싱 예제 요약표
| 예제 코드 | 설명 | 결과 |
|---|---|---|
txt[0:3] | 0번부터 2번까지 | 'Hel' |
txt[:5] | 처음부터 4번까지 | 'Hello' |
txt[6:] | 6번부터 끝까지 | 'Python' |
txt[-6:] | 뒤에서 6글자 | 'Python' |
👉 자세한 인덱스 구조는 파이썬 공식 문자열 슬라이싱 문서도 참고해보세요.
끝으로 – 문자열을 자르고 붙일 수 있어야 실력이 늘어요
문자열 슬라이싱과 합치기는 단순한 출력뿐 아니라,
사용자 입력 처리, 파일 이름 구성, 데이터 정리 등 다양하게 활용돼요.
자주 연습하면서 익숙해지면, 실전에서도 쉽게 응용할 수 있게 될 거예요.
👉 이전 강의: 파이썬 초급 6강 – 자료형 기본 (int, float, str, bool)
문자열 슬라이싱 & 합치기 – 연습문제 10개
- 기초 슬라이싱 연습
변수text = "Python"에서"Pyt"만 출력되도록 슬라이싱 코드를 작성하세요. - 문자열 마지막 3글자 출력하기
변수word = "Programming"에서 마지막 3글자만 출력하세요. - 앞/뒤 문자열 나누기
문자열"HelloPython"을Hello와Python으로 나누어 각각 출력하세요. - 전체 문자열 중 홀수번째 문자만 출력하기
변수msg = "abcdefg"에서"aceg"가 출력되도록 슬라이싱하세요. - 문자열 합치기 연습
변수first = "파이썬"과second = "공부"를 합쳐서"파이썬 공부"로 출력하세요. - 공백 포함해서 합치기
아래 변수들을 사용하여"Hello, world!"라는 문장을 완성하세요.a = "Hello"b = "world" - 문자열과 숫자 결합
변수age = 25를 이용하여"나이는 25세입니다"를 출력하세요.
(힌트: 숫자형 → 문자열로 변환 필요) - 문자열 반복하기
"Hi"를 3번 반복하여 출력하는 코드를 작성하세요. 결과는"HiHiHi"가 되어야 해요. - 문자열 중간 자르기
변수sentence = "I love Python"에서"love"만 슬라이싱하여 출력하세요. - 사용자 입력값 조합
사용자에게 이름을 입력받고"Hello, [이름]!"형태로 출력하는 코드를 작성하세요.
(예: 입력 → 지민, 출력 → Hello, 지민!)
문자열 다루기 자주 묻는 질문 (FAQ)
Q1. 파이썬 문자열에서 슬라이싱은 어떻게 사용하나요?
A1. text[start:end] 형태로 일부 문자열을 잘라냅니다. 예: text[0:3]은 처음부터 2번째 문자까지 추출합니다.
Q2. 음수 인덱스로 슬라이싱이 가능한가요?
A2. 네, -n으로 뒤에서 n번째 문자부터 선택할 수 있어요. 예: text[-3:]은 마지막 3글자를 반환합니다.
Q3. 문자열 합치기는 어떻게 하나요?
A3. + 연산자로 두 문자열을 연결할 수 있습니다. 예: “Hello” + ” ” + “Python” → “Hello Python”
Q4. 문자열을 여러 번 반복하려면 어떻게 하나요?
A4. * 연산자를 사용해 반복할 수 있어요. 예: “Hi” * 3 → “HiHiHi”
Q5. 문자열과 숫자를 연결하려면 어떻게 해야 하나요?
A5. 숫자를 str()로 문자열로 변환한 후 +로 연결해야 합니다. 예: “Age: ” + str(25)
Q6. 문자열 슬라이싱에서 start 또는 end를 생략하면 어떻게 되나요?
A6. start 생략 시 처음부터, end 생략 시 끝까지 가져옵니다. 예: text[:5], text[6:]
Q7. 슬라이싱의 기본 인덱스 방식은 무엇인가요?
A7. 파이썬 인덱스는 0부터 시작하며, end는 포함되지 않은 값을 기준으로 잘라냅니다.
Q8. 슬라이싱 결과는 어떤 자료형인가요?
A8. 슬라이싱한 결과 역시 문자열(str) 자료형입니다.
Q9. 여러 문자열 합치기를 깔끔하게 하고 싶을 땐?
A9. f-string(f”{a}{b}”)이나 join() 메서드를 사용하면 깔끔하게 합칠 수 있어요.
Q10. 문자열 조작 예제는 어디서 확인할 수 있나요?
A10. 본문 예제 코드와 연습문제 10개를 통해 직접 따라 해보며 실습하실 수 있습니다.
