Классы и объекты 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("John",
36)
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("Hello my name is " + self.name)
p1 = Person("John",
36)
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("Hello my name is " + abc.name)
p1 = Person("John",
36)
p1.myfunc()
Изменить свойства объекта
Вы можете изменять свойства объектов следующим образом:
Пример
Установите возраст p1 на 40:
p1.age = 40
Удалить свойства объекта
Вы можете удалить свойства объектов с помощью
del
ключевого слова:
Пример
Удалите свойство age из объекта p1:
del p1.age
Удалить объекты
Вы можете удалить объекты, используя del
ключевое слово:
Пример
Удалите объект p1:
del p1
Заявление о пропуске
class
определения не могут быть пустыми, но если у вас по какой-то причине есть class
определение без содержимого, поместите pass
оператор, чтобы избежать ошибки.
Пример
class Person:
pass