← Все вопросы
TypeError: can only concatenate str (not "int") to str — почему?
13
age = 25
print('Мне ' + age + ' лет')
Ошибка TypeError: can only concatenate str (not "int") to str. Как вставить число в строку?
3 ответа
20
✓ Принятый ответ — помог автору
Через f-строку: f'Мне {age} лет'.
Данил Макаров f-строки топ, спасибо! · 11 месяцев назад
8
Плюсом в питоне можно склеивать только строку со строкой — число он сам не превратит. Варианты:
f'Мне {age} лет' # лучший
'Мне ' + str(age) + ' лет' # явно привести к строке
'Мне {} лет'.format(age)
f-строка предпочтительнее: короче и сама зовёт str() для подстановки. Обратная ситуация ('5' + 5) даёт ту же ошибку — там наоборот, строку надо привести к числу через int(), если хочешь сложить.
4
str(age) обернуть, если хочешь именно плюсом.
Ваш ответ
Войдите, чтобы ответить на вопрос.