Классы и объекты Python

Python класс/объект

Python — это объектно-ориентированный язык программирования.

В Python几乎 все является объектом, обладающим свойствами и методами.

Класс (Class) подобен конструктору объекта или "схеме" для создания объектов.

Создание класса

Чтобы создать класс, используйте class Ключевые слова:

Пример

Используйте атрибут x для создания класса MyClass:

class MyClass:
  x = 5

Запуск примера

Создание объекта

Теперь мы можем использовать класс myClass для создания объектов:

Пример

Создайте объект p1 и выведите значение x:

p1 = MyClass()
print(p1.x)

Запуск примера

__init__() функция

Приведенный выше пример — это наиболее простая форма класса и объекта, которая не слишком полезна в реальных приложениях.

Чтобы понять значение класса, мы должны сначала понять встроенные __init__() Функция.

Все классы имеют функцию __init__() с именем, которая всегда выполняется при запуске класса.

Используйте функцию __init__() для присвоения значений свойствам объекта или для выполнения других операций, которые необходимо выполнить при создании объекта:

Пример

Создайте класс Person с помощью функции __init__() для присвоения значений name и age:

class Person:
  def __init__(self, name, age):
    self.name = name
    self.age = age
p1 = Person("Bill", 63)
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("Bill", 63)
p1.myfunc()

Запуск примера

Совет:self параметр является ссылкой на текущий экземпляр класса, которая используется для доступа к переменным, принадлежащим данному классу.

Параметр 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("Bill", 63)
p1.myfunc()

Запуск примера

Изменение свойств объекта

Вы можете изменить свойства объекта так:

Пример

Установить возраст p1 в 40:

p1.age = 40

Запуск примера

Удаление свойств объекта

Вы можете использовать del Ключевое слово для удаления свойств объекта:

Пример

Удаление свойства age объекта p1:

del p1.age

Запуск примера

Удаление объекта

Использование del Ключевое слово для удаления объекта:

Пример

Удаление объекта p1:

del p1

Запуск примера

Оператор pass

Определение класса не может быть пустым, но если вы по какой-либо причине написали пустое определение класса, используйте оператор pass, чтобы избежать ошибок.

Пример

class Person:
  pass

Запуск примера