Инструкции

Справочный раздел

В этом разделе Вы найдетё инструкции, справочники, и всевозможные хелпы по использованию программного обеспечения.

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

В сети

Пользователей: 194
Из них просматривают:
Аналоги: 70. Даташиты: 76. Инструкции: 8. Новости: 14. Обзор: 1. Остальное: 1. Партнёры: 1. Программы: 1. Производители: 1. Профиль пользователя: 2. Расчёты: 1. Теги: 2. Торрент: 1. Форум: 15.
Участников: 2
Гостей: 192

Google , Яндекс , далее...
Рекорд 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)

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

Разное

Интересно

Семь раз отмерь, один раз отрежь. И не перепутай!

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