파이썬에서 문자열과 정수를 연결하는 방법

소개

파이썬은 + 연산자를 사용하여 문자열 연결을 지원합니다. 대부분의 다른 프로그래밍 언어에서는 문자열을 정수(또는 기타 기본 데이터 유형)와 연결하면 언어가 그것들을 문자열로 변환한 다음 연결합니다.

그러나 파이썬에서는 + 연산자를 사용하여 문자열과 정수를 연결하려고 하면 런타임 오류가 발생합니다.

예제

우리는 + 연산자를 사용하여 문자열(str)과 정수(int)를 연결하는 예제를 살펴보겠습니다.

string_concat_int.py
current_year_message = 'Year is '

current_year = 2018

print(current_year_message + current_year)

원하는 출력물은 다음과 같은 문자열입니다: Year is 2018. 그러나 이 코드를 실행하면 다음과 같은 런타임 오류가 발생합니다:

Traceback (most recent call last):
  File "/Users/sammy/Documents/github/journaldev/Python-3/basic_examples/strings/string_concat_int.py", line 5, in <module>
    print(current_year_message + current_year)
TypeError: can only concatenate str (not "int") to str

그래서 파이썬에서는 어떻게 strint를 연결할까요? 이 작업을 수행하는 다양한 방법이 있습니다.

전제 조건

이 자습서를 완료하기 위해 다음이 필요합니다:

이 자습서는 Python 3.9.6에서 테스트되었습니다.

str() 함수 사용하기

intstr() 함수에 전달하면 str로 변환됩니다:

print(current_year_message + str(current_year))

current_year 정수가 문자열로 반환됩니다: Year is 2018.

% 보간 연산자 사용하기

printf 스타일의 문자열 포매팅을 사용하여 변환 사양에 값을 전달할 수 있습니다:

print("%s%s" % (current_year_message, current_year))

current_year 정수가 문자열로 보간됩니다: Year is 2018.

str.format() 함수를 사용합니다.

문자열 및 정수의 연결에도 str.format() 함수를 사용할 수 있습니다.

print("{}{}".format(current_year_message, current_year))

current_year 정수가 문자열로 형변환됩니다: 연도는 2018년입니다.

f-strings 사용하기

Python 3.6 이상 버전을 사용하는 경우 f-strings 도 사용할 수 있습니다.

print(f'{current_year_message}{current_year}')

current_year 정수가 문자열로 보간됩니다: 연도는 2018년입니다.

결론

완전한 Python 스크립트 및 더 많은 Python 예제를 GitHub 저장소 에서 확인할 수 있습니다.

Source:
https://www.digitalocean.com/community/tutorials/python-concatenate-string-and-int