Разделы инструкций

В сети

Пользователей: 103
Из них просматривают:
Аналоги: 37. Видео: 1. Даташиты: 18. Инструкции: 5. Новости: 14. Остальное: 6. Программы: 1. Теги: 1. Торрент: 4. Форум: 13. Чат: 3.
Участников: 5
Гостей: 98

an , alex01981 , Google , wolf170571 , Яндекс , далее...
Рекорд 2375 человек онлайн установлен 26.12.2015.

Партнёры


Партнёры

Новые объявления

Оглавление

9.3.2. Объекты-классы

Объекты-классы поддерживают два вида операций: доступ к атрибутам и создание экземпляра класса.

Доступ к атрибутам объекта-класса осуществляется так же, как и для других объектов языка Python: obj.attrname. Действительными именами атрибутов являются все имена, помещённые в пространство имён класса при создании объекта-класса. Пусть определение класса выглядит следующим образом:

 

class MyClass:
    'Простой пример класса'
    i = 12345
    def f(x):
        return 'Привет всему миру'

 

Тогда i и f являются действительными атрибутами, ссылающимися на целое число и объект-метод соответственно. Атрибутам можно присваивать новые значения, например, Вы можете изменить значение MyClass.i. __doc__ также является действительным атрибутом, ссылающимся на строку документации класса: 'Простой пример класса'.

Создание экземпляра класса использует запись вызова функций. Просто считайте объект-класс функцией без параметров, возвращающей созданный экземпляр класса. Например,

 

x = MyClass()

 

создает новый экземпляр класса и присваивает его локальной переменной x.

В приведённом примере создается "пустой" объект. Во многих случаях необходимо создавать объект с определенным начальным состоянием — для этого класс должен содержать специальный метод __init__(), например:

 

class MyClass:
    def __init__(self):
        self.data = []

 

Если для класса определен метод __init__(), то он автоматически вызывается при создании каждого экземпляра этого класса.

Для большей гибкости метод __init__(), конечно, может иметь аргументы. В этом случае, аргументы, используемые при создании экземпляра класса, передаются методу __init__(). Например:

 

>>> class Complex:
...     def __init__(self, realpart, imagpart):
...             self.r = realpart
...             self.i = imagpart
...
>>> x = Complex(3.0, -4.5)
>>> x.r, x.i
(3.0, -4.5)

Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.
Отправитель Нити

Разное

При замене электролитических конденсаторов, кроме соблюдения полярности, не следует значительно превышать допустимое рабочее напряжение.

Интересно

Проводите пайку только при выключенном телевизоре.

Похожие инструкции