← Все вопросы

TypeError: 'str' object is not callable — что я сделал не так?

Задан 29 месяцев назад478 просмотров2 ответа
6

Только начал учить питон. Был обычный код, а теперь при запуске падает с ошибкой TypeError: 'str' object is not callable. Вот кусок:

str = input("Имя: ")
print("Привет, " + str(input("Город: ")))

Что значит "object is not callable"? Раньше же работало.

2 ответа

11
✓ Принятый ответ — помог автору

Ты случайно затёр встроенную функцию str, присвоив ей строку: str = input(...). После этого str — это уже не функция, а обычная строка, и str(...) пытается "вызвать строку как функцию". Отсюда 'str' object is not callable.

Просто переименуй переменную, не используй имена встроенных функций:

name = input("Имя: ")
print("Привет, " + str(input("Город: ")))

То же самое бывает с list, int, sum, len — не называй ими свои переменные.

3

Если уже всё запутал прямо в интерактивной консоли — перезапусти её, и str снова станет функцией. А в файле просто поищи, где ты присвоил что-то имени str, и поменяй на нормальное имя.

Ваш ответ

Войдите, чтобы ответить на вопрос.