Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Как можно просто объяснить различия функции и метода в Python, если не говорить о синтаксисе (там различия понятны), а говорить о сути?

ОбразованиеПрограммирование+3
Анонимный вопрос
Data Science
  · 3,4 K
Пофигист с большим жизненным опытом, обремененный образованием и личной жизнью... ;)  · 23 янв 2022
Метод - это всегда функционал класса. Класс всегда описывает свой экземпляр. Метод без класса не существует и предназначен он всегда для изменения состояния экземпляра класса (объекта в памяти). Однако по сути - метод это всегда встроенная в класс функция, работающая с его экземпляром изнутри.
Функция как и процедура (функция которая ничего не возвращает) — это сущности которые могут существовать вне класса — сами по себе. Они и рассчитаны на автономную работу и могут изменять объекты (экземпляры классов) только снаружи и только используя их методы. Надеюсь доступно объяснил
1 эксперт согласен
Диванный философ, по совместительству инженер  · 24 янв 2022
Мне не кажется правильной постановка вопроса. Есть две разные парадигмы программирования: процедурная и объектно-ориентированная. Функция из первой, а метод из второй. Если нет понимания что такое объектно ориентированная парадигма я просто не вижу особого смысла разбираться чем функция отличается от метода.
Метод -- это частный случай функции. Метод -- это функция-член класса.
Или "member function"
кино, литература, задачи и головоломки, балет, отношения, психология  · 4 янв 2022
Метод - внутри какого-то класса, а функция отдельно. Как мы знаем, методы бывают трех типов: 1)обычный метод, который принимает на вход экземпляр (объект класса) self 2)classmethod - который принимает сам класс в качестве параметра на вход 3)staticmethod - принимает только аргументы третий тип (staticmethod) ровным счетом ничем не отличается от функции. Просто эту... Читать далее
По образованию физик, работаю программистом  · 11 дек 2021
По сути отличий нет.
Метод -- это просто функция, которая имеет доступ к экземпляру "своего" класса, который обычно кладётся в переменную `self`. В Питоне это делается явно, в других языках для этого может быть зарезервировано ключевое слово, например, `this`.
1 эксперт согласен
Увлекаюсь математическими проблемами.  · 11 дек 2021
  • Функция описывает динамику будущего объекта.
  • Вызов этой функции из объекта "материализует" эту динамику.
  • Эта "материализация"называется методом.
  • Функция принадлежит классу.
  • Метод принадлежит объекту.