Встроенные методы в Python
Разница между функциями и методами
В Python разница между функциями и методами заключается в том, как они вызываются и на что они действуют.
1. Функции
Что это? Функции — это независимые блоки кода, которые выполняют определённую задачу.
Как вызываются? Вызываются напрямую, передавая аргументы в скобках:
function_name(args).Пример:
def add(a, b): return a + b result = add(2, 3) # Вызов функции print(result) # Вывод: 5Контекст: Функции не зависят от какого-либо объекта (если они не встроены в класс).
2. Методы
Что это? Методы — это функции, связанные с объектами. Они действуют на данные (состояние) конкретного объекта.
Как вызываются? Вызываются через объект с использованием точки:
object.method_name(args).Пример:
class Calculator: def add(self, a, b): return a + b calc = Calculator() # Создание объекта result = calc.add(2, 3) # Вызов метода print(result) # Вывод: 5Контекст: Методы всегда принимают как минимум один аргумент (
selfдля методов экземпляра), который ссылается на текущий объект.
Основные различия:
Критерий
Функции
Методы
Зависимость от объекта
Не связаны с объектами
Привязаны к объектам или классам
Синтаксис вызова
function_name(args)
object.method_name(args)
Тип данных
Просто функция
Функция, определённая внутри класса
Контекст
Работает с переданными аргументами
Имеет доступ к данным объекта через self
Методы как специальные функции
Методы можно рассматривать как функции, которые становятся "методами" только при их определении внутри класса и вызове через объект.
Пример:
class Person:
def greet(self): # Это метод, потому что он определён внутри класса
return "Hello!"
p = Person()
print(p.greet()) # Вызов метода через объектТаким образом, метод — это подвид функции, связанный с объектами или классами.
В Python встроенные методы обычно относятся к методам, которые предоставляются стандартными объектами (например, строками, списками, словарями и т.д.), а также к методам, встроенным в сам язык для выполнения специальных задач.
Вот основные категории встроенных методов:
1. Методы строк (str)
str)'abc'.capitalize() # Пример вызова метода строкиФорматирование:
capitalize(),title(),lower(),upper(),swapcase(),casefold()Работа с содержимым:
startswith(),endswith(),find(),rfind(),index(),rindex()Модификация:
strip(),lstrip(),rstrip(),replace(),zfill(),join()Проверки:
isalpha(),isdigit(),isalnum(),isspace(),isupper(),islower()Разбиение и объединение:
split(),rsplit(),partition(),rpartition(),splitlines()
2. Методы списков (list)
list)[1, 2, 3].append(4) # Пример вызова метода спискаМодификация:
append(),extend(),insert(),remove(),clear()Работа с элементами:
pop(),index(),count()Сортировка и изменение порядка:
sort(),reverse(),copy()
3. Методы словарей (dict)
dict){'a': 1}.keys() # Пример вызова метода словаряПолучение данных:
keys(),values(),items()Модификация:
update(),clear(),pop(),popitem(),setdefault()Поиск:
get()
4. Методы множеств (set)
set){1, 2, 3}.add(4) # Пример вызова метода множестваМодификация:
add(),remove(),discard(),pop(),clear(),update()Операции над множествами:
union(),intersection(),difference(),symmetric_difference()Проверки:
issubset(),issuperset(),isdisjoint()
5. Методы кортежей (tuple)
tuple)Кортежи неизменяемы, поэтому методы ограничены:
count()index()
6. Методы файловых объектов (file)
file)file = open('example.txt')
file.read() # Пример вызова метода файлаЧтение:
read(),readline(),readlines()Запись:
write(),writelines()Работа с курсором:
seek(),tell()Другие:
close(),flush()
7. Методы классов и объектов
Общие методы объектов:
__init__(),__str__(),__repr__(),__len__(),__call__()Специальные методы для перегрузки:
__add__(),__sub__(),__mul__(),__getitem__(),__setitem__()
8. Встроенные функции Python
Хотя это не методы, важно упомянуть, что Python предоставляет около 70 встроенных функций, например:
Последнее обновление