2020-07-16 회의록

신현동·2020년 7월 16일
0

문제

def hello(name,age):
print("안녕"+name)
hello("현동"+10)
이대로 실행을 하면 "안녕현동" 라고 출력 된다

내가 만약, 여기서 "안녕현동" 이 아닌 "안녕10" 이라고 출력하고 싶어서
name을 age로 바꾸면, TypeError: can only concatenate str (not "int") to str 이라는
에러가 뜬다...

에러가 뜨는 이유

TypeError: can only concatenate str (not "int") to str 이라는 에러를
단어만 해석하면 str(문자열) int(정수) concatenate(연결하다)
정수 안됨 (not "int") to str (문자열 로?) 그래서
오직 문자열은 문자열로만 연결할수있다 이렇게 해석된다

알게된 점

문자열과 정수는 같이 못씀 그래도 같이 쓰고 싶으면

def hello(name,age):
print("안녕"+name)
hello("현동"+(str)(10))
이렇게 앞에 (str)을 붙혀주면 된다 이런걸 캐스팅 이라고 하는데
반대로, 정수를 그냥 문자열로 바꾸고 싶으면
앞에서 했던것처럼 문자열 앞에 int를 붙혀서 정수로 만들어주면 된다

profile
코딩 초보

0개의 댓글