프로그래밍언어/파이썬[Error]
[파이썬][Error] 024. TypeError - can only concatenate str (not 'int') to str
about_IT
2025. 5. 26. 02:02
728x90
TypeError: can only concatenate str (not 'int') to str
오류는 문자열(str
)과 정수형(int
)을 직접 덧붙이려고 할 때 발생하는 오류입니다. 파이썬은 타입이 다른 객체 간의 연산에 엄격하여, 문자열과 정수를 +
연산자로 연결하려고 하면 자동으로 형변환을 해주지 않습니다.
이 오류는 문자열과 숫자를 함께 출력하거나 메시지에 포함하려 할 때 자주 발생합니다. 문자열로 출력하려면 정수형 데이터를 먼저 문자열로 변환해야 합니다.
● 오류 발생 예시
age = 25
message = "나는 " + age + "살입니다."
위 코드는 age
가 정수형이기 때문에 +
연산으로 문자열과 결합하려고 하면 오류가 발생합니다.
TypeError: can only concatenate str (not 'int') to str
● 해결 방법
str()
함수로 정수를 문자열로 변환- f-string을 활용한 문자열 포매팅
format()
메서드를 이용한 방식
● 올바른 코드 예시
age = 25
message = "나는 " + str(age) + "살입니다."
message = f"나는 {age}살입니다."
message = "나는 {}살입니다.".format(age)
위 세 가지 방법은 모두 문자열과 숫자를 문제 없이 결합할 수 있는 방법입니다.
● 자주 하는 실수
- 숫자를 문자열로 변환하지 않고 바로 연결 시도
- 문자열 처리 과정에서 다양한 타입이 혼합되는 경우
- 사용자 입력을 문자열로 받아놓고 숫자 연산에 사용하려는 경우
● 결론
TypeError - can only concatenate str (not 'int') to str
오류는 문자열과 숫자 타입의 명확한 구분이 필요한 파이썬의 특성에서 비롯됩니다. 문자열 간 연결 시에는 반드시 모든 항목이 str
타입이어야 하며, 숫자 데이터는 str()
함수나 문자열 포매팅 기능을 이용해 명시적으로 문자열로 변환한 후 사용해야 합니다.
728x90