Рубрики
Без рубрики

Простой пример объектов Python и классов [+ видео]

Классы и объекты Python: Пример Гарри Поттера внутри!

Автор оригинала: Chris.

В Python все это объект. Даже целые числа являются объектами – это отличается от языков программирования, таких как Java, где целые числа, плавающие и логические значения являются примитивными типами данных. Таким образом, Python построен на строго согласованной объектно-ориентированной парадигме.

Учитывая, что объекты повсюду в Python, ориентированное на объектно-ориентированное программирование не хорошо изучено на Python Coders. Огромная ошибка! К счастью, вы можете исправить это при примере примерно на объекты Python и классы.

Если вам удается прочитать все учебное пособие, вы получите вознаграждение с помощью PDF Cheet листа о классах и объектах. Итак, оставайся со мной! 🧙♂️.

Полный пример код

Вот простой пример объектной ориентации в Python. Мы создаем два класса Маггл и Волшебник и создать несколько экземпляров, таких как Вернон и Петуния ( Mootgles ), а также Том ( Волшебник ). Идите вперед и увидите на примере, я объясню это вам в на мгновение:

class Muggle:
    def __init__(self, age, name, liking_person):
        self.age = age
        self.name = name
        self.likes = liking_person


class Wizard:
    def __init__(self, age, name):
        self.age = age
        self.name = name
        self.mana = 100

    def like_me(self, victim):
        if self.mana >= 100:
            victim.likes = self.name
            self.mana = self.mana - 100

            
Vernon = Muggle(52, "Vernon",  None)
Petunia = Muggle(49, "Petunia", Vernon)
Vernon.likes = "Petunia"
print(Vernon.likes)


Wiz = Wizard(42, "Tom")
Wiz.like_me(Petunia)
Wiz.like_me(Vernon)
print(Petunia.likes=="Tom" and Vernon.likes=="Tom")

Как вы проходите по этому учебству, вы можете посмотреть меня объяснить его в следующем видео.

[Video] Python Classes Объекты Пример из Гарри Поттера

Классы Пример объяснил

Вы можете спросить: Что такое класс в любом случае?

Классы – «чертежи» для создания объектов. Описание класса сообщает вам все, что объект состоит из и умеет делать (данные и функциональность).

Сегодня мы видим эти две концепции в действии (с обычными примерами Гарри Поттера):

class Muggle:
    def __init__(self, age, name, liking_person):
        self.age = age
        self.name = name
        self.likes = liking_person


Vernon = Muggle(52, "Vernon",  None)
Petunia = Muggle(49, "Petunia", Vernon)

Из этого кода-фрагмента вы можете узнать несколько вещей:

  1. Мы создаем новый класс «План» для Магглы Используя ключевое слово Класс Отказ Это абстрактная концепция – и это показывает, как каждый Маггл В нашем микрокосме выглядит.
  2. Мы используем метод «Конструктор» __init __ (...) инициализировать класс с данными. В нашем случае каждый Маггл есть атрибуты возраст , Имя и Любит (человек им нравится). Первое значение любого класса Метод (включая конструктор) является ссылкой на сам объект. Помните, что класс описывает функциональность и свойства бетонных объектов. Как только вы позвоните конструктору в свой код, Python создает пустой объект, который вы можете получить доступ к имени Я Отказ

Обратите внимание, что, хотя первый аргумент – Я При определении метода вы на самом деле не указываете этот аргумент при вызове метода. Python внутренне делает это для вас. Это просто кусок синтаксиса, который вы должны помнить.

Конструктор является специальным методом Маггл Класс : Это позволяет вам инициировать новый объект, используя имя класса как вызов функции. Например, звонки Маггл (52, "Вернон", нет) и Маггл (49, «Петуния», Вернон) Создает два новых объекта класса оба определяют три переменных следующим образом:

Вы можете видеть, что эти объекты следуют тому же черту, но являются разными случаями класса Маггл Отказ Тот же тип свойств, но разные ДНК.

Отныне эти объекты живут в памяти вашего компьютера, пока Python Buam не собирает их.

Можете ли вы увидеть трагический элемент истории до сих пор? Петуния любит Вернон, но он никому не любит Отказ Однако, как сказал знаменитый немецкий автор «Янош», «Если вы любите, вы не можете не помочь, но немного любви назад» Отказ Давайте сделаем это счастливым концом, будем ли мы?

Vernon.likes = "Petunia"
print(Vernon.likes)

Головоломка 1: Какая вывод этого кода фрагмент?

Давайте двигаться дальше. Гарри Поттер будет скучно без волшебников. Итак, давайте определим Волшебник Класс, чтобы мы могли создать некоторые волшебники в нашем маленьком мире.

class Wizard:
    def __init__(self, age, name):
        self.age = age
        self.name = name
        self.mana = 100

    def like_me(self, victim):
        if self.mana >= 100:
            victim.likes = self.name
            self.mana = self.mana - 100


Wiz = Wizard(42, "Tom")

Каждый Волшебник Объект имеет три переменных: возраст , Имя и Мана Уровень (насколько магическая сила слева от волшебника). Кроме того, мы добавляем метод под названием Alke_me (...) Это волшебная формула Мастера может применяться к любой жертве. Если волшебник имеет достаточно маны, он может заставить жертву любить их.

Том (aka. Господь Волдеморт) одиноко и хочет, чтобы любить, поэтому он пытается получить петунию и Вернон, чтобы понравиться ему:

Wiz.like_me(Petunia)
Wiz.like_me(Vernon)

print(Petunia.likes=="Tom" and Vernon.likes=="Tom")

Головоломка: Том успешен в том, что он как он, как он?

Убедитесь, что вы полностью усваивали синтаксис того, как создать Классы и объекты в Python Отказ Наиболее распространенный источник путаницы – забыть о Я Аргумент при определении метода и что конструктор определяется и называется по-разному: __init __ (...) против w Iszhard (...) Отказ

Головоломки

Головоломка 1: "Петуния"

Головоломка 2: Ложь

Чит лист Ооп.

Чтобы помочь вам более глубоко в самых важных особенностях ориентации объекта Python, не стесняйтесь скачать следующие PDF:

Скачать все 8+ Python Cheat Steets

Скачать только этот чит-лист в виде PDF

Учебное пособие в Instagram Python OOP

Для ультракороткого урока ориентации на объект Python посмотрите следующий пост Instagram (правый промах):

Python OOP объяснил! Начните с объектно-ориентированного программирования в Python сейчас! Отказ Посетите наш блог для получения дополнительной информации Python. Ссылка в Bio ⬆️. Отказ #finxter #pythonlearning # pythonista # python3 #pythoncoding #coding #oop

Ein Beitrag Geteilt Von Блог Python (@ finxter.com_) am

Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.

Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python One-listers (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.

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