본문 바로가기
Error/Python

[Python3_Error] str(문자열) 연결 에러

by Rising One★ 2022. 10. 18.
728x90
반응형
SMALL

상황

1) print()문을 사용해 문장(문자열)을 출력하던 중이었습니다.

 

2) 사용 코드는 다음과 같습니다.

name = python
age = 1
hobby = coding

print(name + "는" + age + "살이며,", hobby, "을 아주 좋아해요" )

 

3) 에러 발생 (문자형이 아닌 모든 경우에)

TypeError: can only concatenate str (not "int") to str
TypeError: can only concatenate str (not "bool") to str

해석

  • str(문자열)에는 str만 이을 수 있다. (not int)
  • ( concatenate : 사슬처럼 잇다 )

해결

  • 숫자형 변수로 선언한 age를 문자열로 치환해주면 될 것 같습니다.
  • str()로 변수를 감싸줍니다.
name = python
age = 1
hobby = coding

print(name + "는" + str(age) + "살이며,", hobby, "을 아주 좋아해요" )

추가 개념

1) 위 에러를 해결하다가 코드가 다음 아래와 같이 변형됐습니다.

 

2) '+'로 '+'를 이어준 셈의 코드입니다. (아래)

print(name + "는" +  + "살이며,", hobby, "을 아주 좋아해요" )

 

3) 아래와 같은 에러를 냄을 확인했습니다.

TypeError: bad operand type for unary +: 'str'

4) 이를 보면, "단항 +에 대한 잘못된 피연산자 유형 : 'str'임"을 알 수 있습니다.

5)즉, '+'로 'str(문자열)'을 연결시켜야 하는데 그것이 아닌 '+'가 뒤이어져 나온 에러이다.

728x90
반응형
LIST

댓글