#python-3.x
#python-3.x
Вопрос:
Кто-нибудь может объяснить, почему jupyter notebook сообщает: «Ошибка типа: объект ‘list’ не вызывается» При попытке выполнить следующий код:
a = [3, 2, 6, 2, 2, 1, 4, 2, 2, 0, 3, 6, 7, 4, 6, 3]
b = sum(a)
print(b)
Но PyCharm возвращает: 53
????
Комментарии:
1. Вероятно, вы определили
sum
как список ранее в своем коде в записной книжке Jupyter. Чтобы переопределить это, просто запуститеdel sum
в ячейке, которая удалит переменную, но не встроенную функцию.2. никогда не используйте имена встроенных модулей в качестве имен переменных — они затеняют встроенную функцию — в вашем случае:
sum()
. Используйтеprint(type(sum))
для проверки — если это что-то другое, кроме функции, которую вы где-то использовали как переменную3. Вот и все, да, большое спасибо!
Ответ №1:
Jupyter notebook позволяет вам запускать код построчно, что означает, что если вы определили переменную с именем «sum» в одной из ячеек, и в этой переменной есть список, функция «sum» перезаписывается до тех пор, пока вы не перезапустите ядро и не узнаете, что существует только переменная, которая не можетвызывается.