Образовательный проект «SnakeProject» Михаила Козлова

Навигация

⇒ Python ⇐

CISCO

Voice(Asterisk\Cisco)

Microsoft

Powershell

SQL\T-SQL

FreeBSD and Nix

Общая

WEB Разработка

ORACLE SQL \ JAVA

Мото

Стрельба, пневматика, оружие

Саморазвитие и психология


Основы ООП, классы в python


Простое введение в основы ООП в python

Код проверялся на версии 3


Члены класса называются атрибутами, функции класса — методами, поля класса — свойствами.

-
Минимально определение класса:
class A:
    pass

Создание экземпляра класса:
o = A()

-    
Метод имеет аргумент self:
class A:
    def func(self, x):
        return "arg self is: "+str(self)+"arg 2 is: "+str(x)

Обращение к методу класса без создания экземпляра:
A.func(5,2)
'arg self is: 5arg 2 is: 2'
 

Классы могут наследоваться от других классов:
class A(object):
    def func(self):
        return "Func in A"

class B(A):
    pass

Вызов метода класса-родителя
o = B()
o.func()

-
Конструктор и деструктор(методы вызываемые при создании и удалении класса)
class A:
    def __init__(self, p1, p2):
        self.line = (p1, p2)
    def __del__(self):
        print ("Деструктор удаляет из памяти: %s - %s" % self.line)

Создаем экземпляр, проверяем отработку конструктора, удаляем экземпляр        
a = A("s1", "s2")
a.line
del a

-
Инкапсуляция.Скрытые атрибуты определяются с помощью конструкции __ИмяАтрибута, доступ на прямую к ним будет закрыт:
class A(object):
    def __init__(self):
        self.__i = 1
    def set_i(self,x):
        self.__i = x
    def get_i(self):
        return self.__i

Изменение скрытого атрибута    
a = A()
a.get_i()
a.set_i(5)
a.get_i()

-
Документирование класса
class A(object):
    """Documentation"""
    pass

Вызов документации
A.__doc__
'Documentation'

 

Ссылка на канал YouTube: http://www.youtube.com/user/snake23021989


Комментарии пользователей

Эту новость ещё не комментировалиНаписать комментарий
Анонимам нельзя оставоять комментарии, зарегистрируйтесь!

Контакты Группа ВК Сборник материалов по Cisco, Asterisk, Windows Server, Python и Django, SQL и T-SQL, FreeBSD и LinuxКод обмена баннерами Видео к IT статьям на YoutubeВидео на другие темы Смотреть
Мои друзья: Советы, помощь, инструменты для сис.админа, статическая и динамическая маршрутизация, FreeBSD

© Snakeproject.ru создан в 2013 году.
При копировании материала с сайта - оставьте ссылку.

Рейтинг@Mail.ru
Рейтинг@Mail.ru Яндекс.Метрика





Поддержать автора и проект