Python

Уроки Python для начинающих

21 урок 50 заданий Справочник Компилятор

#17 - Основы ООП Python

#17 - Основы ООП Python


Python

В этом уроке мы с вами приступим к изучению ООП в языке Python. ООП это объектно ориентированное программирование в основе которого является создание класса, а также объекта класса. Мы научимся создавать классы и объекты, а также создадим методы и поля для основного класса!

Видео урок:

Сперва ООП может показаться чересчур сложным и непонятным, но на самом деле это вовсе не так. Давайте абстрагируемся от сложным понятий и попробуем описать ООП простыми словами. В качестве примера возьмем робота, которого будем описывать.

Класс - это чертеж робота, а экземпляр класса (объект класса) - это натуральный робот, изготовленный по чертежу.

Наследование - это когда мы копируем чертеж обычного робота и подрисовываем к нему крылья и пулемет, потому что нам нужен робот, который умеет летать и стрелять.

Полиморфизм - это когда у нас есть небольшое стадо роботов, изготовленных по разным чертежам. Но так как все чертежи были скопированы с одного начального, то мы можем не думать о том, какой именно этот робот - мы просто можем сказать ему, чтоб он уничтожил человечество. А каким оружием - не наше дело, это зависит от того, какое именно оружие было пририсовано к его чертежу.

А инкапсуляция - это броня, которой прикрыт робот. Внутри у него проводки и переключатели, которые легко повредить. Но покрыв эти проводки броней(protected или private), мы защитили внутренности робота от посягательств снаружи.

Каждый класс может иметь свои методы (функции), свойства (переменные), а также конструкторы (о них позже). На основе любого класса можно создавать неограниченное количество объектов, каждый из которых будет иметь свои характеристики.

Чтобы создать класс необходимо использовать ключевое слово class. Далее внутри него можете прописать любые функции и переменные, которые только захотите.

После этого на основе какого-либо класса вы можете создать объект. Для этого используйте название класса для выделения памяти под объект.
class Some:
    pass # Класс может ничего не возвращать

obj_new = Some() # Создание объекта
obj_second = Some() # Создание 2 объекта

Исходный код

Создание класса и объектов
class Person:
	name = "Ivan"
	age = 10
	
	def set(self, name, age):
		self.name = name
		self.age = age
	

vlad = Person ()
vlad.set ("Влад", 25)
print (vlad.name + " " + str(vlad.age))

ivan = Person ()
ivan.set ("Иван", 56)
print (ivan.age)

Онлайн редактор кода

Загрузка...

Задание к уроку

Необходимо оформить подписку на проект, чтобы получить доступ ко всем домашним заданиям!

Большое задание по курсу

Вам необходимо оформить подписку на сайте, чтобы получить большое задание. Такие задания есть к каждому курсу. В них входит задание, методика решения, а также "Готовое решение".
PS: подобные задания доступны при подписке от 1 месяца!


Python

Также стоит посмотреть