Объектно-ориентированным программированием называется такой подход к программированию, в котором используются понятия класса и объекта. Говоря проще, когда перед нами стоит задача запрограммировать какой-либо объект, то намного легче сделать это описав этот объект, чем написав ряд функций.
* Класс (Class): Определенный программистом прототип программируемого объекта с набором атрибутов (переменных и методов), которые описывают данный объект. Доступ к аттрибутам и методам осуществляется через точку
* Переменная класса (Class variable): Переменная, доступная для всех экземпляров данного класса. Определяется внутри класса, но вне любых методов класса.
* Экземпляр класса (Instance): Отдельный объект-представитель определенного класса.
* Переменная экземпляра класса (Instance variable): Переменная определенная внутри медота класса, принадлежащая только к этому классу.
* Метод (Method): Особая функция, определенная внутри класса.
* Наследование (Inheritance): Передача аттрибутов и методов родительского класса дочерним классам.
* Перегрузка функций (Function overloading): Изменение работы метода, унаследованного дочерним классом от родительского класса.
* Перегрузка операторов (Operator overloading): Определение работы операторов с экземплярами данного класса.
Создание класса в Python:
Определение класса начинается с ключевого слова class, после него следует имя класса и двоеточие. Теперь с отступом можно описывать сам класс.
print (self.name, "lifted", self.people_lifted, "people out of", Elevator.people_lifted)
Чтобы создать экземпляр класса следует любой переменной присвоить значение имени класса, указав в скобках аргументы, которые принимает метод __init__().
| elevator_1 = Elevator("OTIS")
| elevator_2 = Elevator("PHILLIPS")
Чтобы получить доступ к атрибутам класса в Python следует после объекта поставить точку и написать имя переменной или метода, которые вы хотите использовать:
| # Везем человека в лифте под именем OTIS
| elevator_1.lift()
| # Везем двоих человек в лифте под именем PHILLIPS
| elevator_2.lift()elevator_2.lift()
| # Получаем информацию по лифту под именем OTIS
| elevator_1.info()
| # Получаем информацию по лифту под именем PHILLIPS
| elevator_2.info()
Соединив все это в одном файле, получим следующее:
Углубленные темы объектно-ориентированного программирования, которые мы еще рассмотрим:
Наследование в Python.
Перегрузка методов в Python.
Перегрузка операторов в Python.
Сокрытие данных класса в Python.
Принципы ООП.
Модули в Python
Published: 20 March 2015
Система модулей позволяет вам логически организовать ваш код на Python. Группирование кода в модули значительно облегчает процесс написания и понимания программы. Говоря простым языком, модуль в Python это просто файл, содержащий код на Python. Каждый модуль в Python может содержать переменные, объявления классов и функций. Кроме того, в модуле может находиться исполняемый код.
Вы можете использовать любой питоновский файл как модуль в другом файле, выполнив в нем команду import. Команда import в Python обладает следующим синтаксисом:
| import module_1[, module_2[,... module_N]
Когда интерпретатор Python встречает команду import, он импортирует (дает доступ) этот модуль, если он присутствует в пути поиска Python. Путь поиска Python это список директорий, в которых интерпретатор производит поиск перед попыткой загрузить модуль. Например, чтобы использовать модуль math следует написать:
| import math
| # Используем функцию sqrt из модуля math
| print (math.sqrt(9))
| # Печатаем значение переменной pi, определенной в math
| print (math.pi)