Python Классы и Объекты
Классы/Объекты Python
Python это объектно-ориентированный язык программирования.
Почти все в Python является объектом со своими свойствами и методами.
Класс подобен конструктору объектов или «чертежу» для создания объектов.
Создать класс
Чтобы создать класс, используйте ключевое слово class
:
Пример
Создайте класс с именем MyClass со свойством с именем x:
class MyClass:
x = 5
Попробуйте сами »
Создать объект
Теперь мы можем использовать класс с именем MyClass для создания объектов:
Пример
Создайте объект с именем p1 и выведите значение x:
p1 = MyClass()
print(p1.x)
Попробуйте сами »
Функция __init__()
Приведенные выше примеры представляют собой классы и объекты в их простейшей форме и не очень полезны в реальных приложениях.
Чтобы понять значение классов, мы должны понять встроенную функцию __init__().
Все классы имеют функцию __init__(), которая всегда выполняется при инициализации класса.
Используйте функцию __init__() для присвоения значений свойствам объекта или других операций, которые необходимо выполнить при создании объекта:
Пример
Создайте класс с именем Person, используйте функцию __init__() для присвоения значений имени и возрасту:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
p1 = Person("Андрей",
52)
print(p1.name)
print(p1.age)
Попробуйте сами »
Примечание: Функция __init__()
вызывается автоматически каждый раз, когда класс используется для создания нового объекта.
Методы объекта
Объекты также могут содержать методы. Методы в объектах — это функции, принадлежащие объекту.
Создадим метод в классе Person:
Пример
Вставьте функцию, которая печатает приветствие, и выполните ее для объекта p1:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def myfunc(self):
print("Привет, меня зовут " + self.name)
p1 = Person("Андрей",
52)
p1.myfunc()
Попробуйте сами »
Примечание: Параметр self
является ссылкой на текущий экземпляр класса и используется для доступа к переменным, принадлежащим классу.
Собственный параметр
Параметр self
является ссылкой на текущий экземпляр класса и используется для доступа к переменным, принадлежащим классу.
Его не обязательно называть self
, вы можете называть его как угодно, но он должен быть первым параметром любой функции в классе:
Пример
Используйте слова mysillyobject и abc вместо self:
class Person:
def __init__(mysillyobject, name, age):
mysillyobject.name = name
mysillyobject.age = age
def myfunc(abc):
print("Привет, меня зовут " + abc.name)
p1 = Person("Андрей",
52)
p1.myfunc()
Попробуйте сами »
Изменить свойства объекта
Вы можете изменять свойства объектов следующим образом:
Удалить свойства объекта
Вы можете удалить свойства объектов с помощью ключевого слова del
Удалить объекты
Вы можете удалять объекты с помощью ключевого слова del
Заявление о пропуске
Определения класса
не могут быть пустыми, но если по какой-то причине у вас есть определение
class
без содержимого, добавьте оператор pass
чтобы избежать ошибки.