• Главная
  • Курсы
  • События
  • Блог
  • Контакты
  • Магазин
    • Загрузки
  • Партнерка
  • Обо мне
Есть вопросы? Звоните:
+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

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

gpt 1c
CHAT GPT 1C. МИКРОСЕРВИС PYTHON FASTAPI
17 сентября, 2023
Pyinstaller fastapi uvicorn small
PYINSTALLER FASTAPI UVICORN. УПАКОВЫВАЕМ В EXE ФАЙЛ
7 сентября, 2023
1с 8.3.23
1С 8.3.23 ЧТО НОВОГО
27 апреля, 2023

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

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

Поиск

Рубрики

  • Blog

Ссылки

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

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

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

Войти Google Войти Twitter Войти Vkontakte

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

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

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

Register a new account

Are you a member? Login now