• Главная
  • Курсы
  • События
  • Блог
  • Контакты
  • Магазин
    • Загрузки
  • Партнерка
  • Обо мне
Есть вопросы? Звоните:
+7 (917) 449 09 97
admin@nizamov.school
РегистрацияВход
nizamov.school
  • Главная
  • Курсы
  • События
  • Блог
  • Контакты
  • Магазин
    • Загрузки
  • Партнерка
  • Обо мне

Blog

  • Главная
  • Блог
  • Blog
  • PYTHON ДЛЯ 1C — ЭТО ПРОСТО. ЧАСТЬ 7

PYTHON ДЛЯ 1C — ЭТО ПРОСТО. ЧАСТЬ 7

  • Опубликовано Илья Низамов
  • Разделы Blog
  • Дата 11.10.2020
  • Комментарии Нет комментариев

Подписывайтесь в соц сетях. Там провожу конкурсы и публикую еще больше контента.

Vk Youtube Telegram Instagram Facebook Twitter

Запишись на тренинг

НАУЧИСЬ РАЗРАБАТЫВАТЬ МИКРОСЕРВИСЫ НА PYTHON ДЛЯ 1С ЗА 5 ЧАСОВ
ПОДРОБНЕЕ

ООП в Python

class Product:
count = 0

# При инициализации объекта можно передать параметры
def __init__(self, price=0):
self.name = ""
self.price = price
Product.count += 1

def help(self):
print("Название товара:", self.name)

def __del__(self):
Product.count -= 1
print("Этот стол отправился в топку")

def __str__(self):
return "Теперь я могу вывести цену: " + str(self.price)

def __bool__(self):
return self.price > 0

def __eq__(self, other):
return self.price == other.price

def __add__(self, other):
new_obj = Product()
if isinstance(other, Product):
new_obj.name = self.name
new_obj.price = self.price + other.price
return new_obj

def __call__(self, *args, **kwargs):
print(args, kwargs)

Создание объекта

table = Product()
table.name = "Стол"
table.price = 1500
table.help()

Атрибуты класса в Python

# Атрибуты можно добавлять динамически
table.color = "красный"
print(dir(table))
# И удалять тоже
del table.color
print(dir(table))

# Можно проверить сущестовование атрибута
print("Есть атрибут color", hasattr(table, "color"))
print("Есть атрибут name", hasattr(table, "name"))
# установить атрибут
setattr(table, "material", "дуб")
# удалить
delattr(table, "material")
# и получить
print(getattr(table, "name"))

Магические методы класса в Python

# Передача параметров при инициализации __init__(self, price=0)
table_2 = Product(3500)
print(table_2.price)
# Изменение представления объекта при распечатке __str__
print(table_2)

# Проверка объекта как булево __bool__
table_2.price = 0
if table_2:
print("Цена объекта > 0")
else:
print("Цена объекта = 0")

# Сравнение объектов __eq__
table_2.price = 1500
if table == table_2:
print("Цена одинаковая")

# сложение объектов __add__
table_3 = table + table_2
print(table_3)

# Обращение к объекту как к функции __call__
table_3(5, a=4)

print(Product.count)
author avatar
Илья Низамов

Предыдущая запись

PYTHON ДЛЯ 1C — ЭТО ПРОСТО. ЧАСТЬ 6
11.10.2020

Следующая запись

PYTHON ДЛЯ 1C — ЭТО ПРОСТО. ЧАСТЬ 8
14.10.2020

Вам также может понравиться

gigachat
GIGACHAT ИЛИ CHATGPT ИИ МЕНЕДЖЕР ДЛЯ 1С
15 мая, 2024
gigachat ии менеджер
ИИ МЕНЕДЖЕР НА БАЗЕ GIGACHAT
12 февраля, 2024
chatgpt антиспам
ChatGPT Антиспам. Часть 1
5 февраля, 2024

Оставьте ответ Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Поиск

Рубрики

  • Blog

Ссылки

  • Политика конфиденциальности
  • Публичная оферта

Сайт создан в NIZAMOV.studio

Регистрация с помощью:

Войти Vkontakte

Вход через логин и пароль

Забыли пароль?

Нет аккаунта? Регистрируйся прямо сейчас

Register a new account

Are you a member? Login now