본문 바로가기
언어/python3

파이썬 | 정수와 문자열 함께 출력하기

by Godgil 2020. 3. 15.

백준알고리즘을 단계별로 하나하나 풀어가던 도중, print()를 이용한 출력부분에서 막혀버렸다.

하나의 정수를 입력받아서 구구단으로 출력하는 문제였는데,

아무리 군대갔다왔다해도 이정도는 기억이 났다.

 

하지만, 제일 중요한 출력이 제대로 나오지 않았다.

내가 제일 처음 썼던 코드이다.

num = input()
num = int(num)
for i in range(1,10):
    print(num + '*' + i + '=' + num*i)

 이렇게 그냥 +를 해주면 알아서 출력을 해 줄줄 알았지만,

TypeError: unsupported operand type(s) for +: 'int' and 'str'

  위처럼 이런 오류가 나온다.

해석해보면 int와 str 사이에는 +를 지원하지 않는다는 소리이다.

분명히 배웠을텐데, 왜 이런건 기억이 나지 않는것일까.

 

해결방법은 간단했다.

여러 개가 있는데, 알아두면 좋을것 같아서 다 적으려고 한다.

num = input()
num = int(num)
for i in range(1,10):
    print(num,'*',i,'=',num*i)

 그냥 이렇게 콤마(,)를 써서 출력할 수 있고

num = input()
num = int(num)
for i in range(1,10):
    print(('{0} * {1} = {2}').format(num, i, num*i) )

 이렇게 중괄호를 통해 0번 1번 2번 차례대로 .format을 써서 출력할 수도 있다.

 

찾아보니까

분명 군대가기 전에 자료구조를 파이썬으로 배우면서 다 배웠던거 같은데 더 열심히 해야겠다.

댓글