Зачем использовать метаклассы вместо функций?
Поскольку
Тому есть несколько причин:
▪️ Назначение яснее. Когда вы видите
▪️ Можно использовать ООП. Метаклассы могту наследоваться от метаклассов, перегружая родитальские методы.
▪️ Лучше структурированный код. Вы не будете использовать метаклассы для таких простых вещей, как в примере выше. Обычно это что-то сложное. Возможность создать несколько методов и сгруппировать их в одном классе очень полезна, чтобы сделать код более удобным для чтения.
▪️ Можно использовать
В этом руководстве мы расскажем, что такое метаклассы в Python, зачем они нужны и как их создавать.
Поскольку
__metaclass__
принимает любой вызываемый объект, с чего бы вдруг использовать класс, если это очевидно сложнее?Тому есть несколько причин:
▪️ Назначение яснее. Когда вы видите
UpperAttrMetaclass(type)
, вы сразу знаете, что дальше будет.▪️ Можно использовать ООП. Метаклассы могту наследоваться от метаклассов, перегружая родитальские методы.
▪️ Лучше структурированный код. Вы не будете использовать метаклассы для таких простых вещей, как в примере выше. Обычно это что-то сложное. Возможность создать несколько методов и сгруппировать их в одном классе очень полезна, чтобы сделать код более удобным для чтения.
▪️ Можно использовать
__new__
, __init__
и __call__
. Конечно, обычно можно всё сделать в __new__
, но некоторым комфортнее использовать __init__
▪️ Они называются метаклассами, чёрт возьми! Это должно что-то значить!В этом руководстве мы расскажем, что такое метаклассы в Python, зачем они нужны и как их создавать.
🤯10👍4❤1
🕷 О новой угрозе для Python разработчиков в 2023 году или ещё один вирус в пакете PyPi
Универсальность и относительная простота в изучении делает Python самым популярным ЯП в мире. Но также использование именно этого языка достаточно популярно в кругах злоумышленников и львиная доля вредоносных программ написаны именно на Python.
В ноябре 2022 года многие исследователи обнаружили более 400 вредоносных пакетов, загруженных в официальный репозиторий Python Package Index (PyPI)... Читать статью
Универсальность и относительная простота в изучении делает Python самым популярным ЯП в мире. Но также использование именно этого языка достаточно популярно в кругах злоумышленников и львиная доля вредоносных программ написаны именно на Python.
В ноябре 2022 года многие исследователи обнаружили более 400 вредоносных пакетов, загруженных в официальный репозиторий Python Package Index (PyPI)... Читать статью
🤔10👍5
Media is too big
VIEW IN TELEGRAM
🎬 Паттерн Singleton (Одиночка) в Python
Singleton (Одиночка) - это шаблон предоставления глобального доступа к состоянию, гарантируется, что объект всегда будет один и тот же.
Нужен для одной точки доступа к ресурсам/данным и для того чтобы ресурсоемкие задачи сделать 1 раз
Monostate - это шаблон предоставления глобального доступа к состоянию, объекты при этом могут быть разными.
+ плюсы: 1 раз выполняем тяжелые задачи, имеем 1 вход для всей системы
- минусы: общесистемная глобальная переменная
Модуль в python -это синглтон! Потому нам никуда от них не деться, даже если считать синглтон анти-паттерном
➖ https://www.youtube.com/watch?v=4ZXGELFwfPA
Singleton (Одиночка) - это шаблон предоставления глобального доступа к состоянию, гарантируется, что объект всегда будет один и тот же.
Нужен для одной точки доступа к ресурсам/данным и для того чтобы ресурсоемкие задачи сделать 1 раз
Monostate - это шаблон предоставления глобального доступа к состоянию, объекты при этом могут быть разными.
+ плюсы: 1 раз выполняем тяжелые задачи, имеем 1 вход для всей системы
- минусы: общесистемная глобальная переменная
Модуль в python -это синглтон! Потому нам никуда от них не деться, даже если считать синглтон анти-паттерном
➖ https://www.youtube.com/watch?v=4ZXGELFwfPA
👍7
🤯19👍13🤔5
Метод __repr__ в Python
Метод
Функция
Метод
__repr__
в Python выдает текстовое или строковое представление сущности или объекта. Этот процесс вызывается всякий раз при вызове метода repr()
для какой-то сущности. Можно сказать, что методы repr()
и __repr__
взаимозаменяемы.Функция
__str__
в Python делает то же самое, но ее поведение всё же немного отличается. Она предназначена для создания удобочитаемой версии, полезной для отслеживания или отображения информации об объекте. А метод __repr__
предназначен для предоставления «официального» текстового образа объекта, который можно использовать для воссоздания этого объекта.🤔11👍4
🔥 Разбираемся в асинхронности: где полезно, а где — нет?
Автор - backend-разработчик в KTS, занимается проектами, где повсеместно используется асинхронное программирование, и ведет курсы по нему в школе Metaclass.
Сегодня автор постарается объяснить, что такое асинхронное программирование, зачем оно нужно, какие задачи решает и как ему научиться.
Что будет в статье:
▪️Что такое асинхронное программирование?
▪️В каких задачах полезно асинхронное программирование
▪️В каких задачах бесполезно асинхронное программирование
▪️Важно ли знать, как писать асинхронный код в наше время
▪️Почему стоит писать асинхронный код именно на Python
▪️Итоги
▪️С чего начинать учить asyncio
Читать статью
Автор - backend-разработчик в KTS, занимается проектами, где повсеместно используется асинхронное программирование, и ведет курсы по нему в школе Metaclass.
Сегодня автор постарается объяснить, что такое асинхронное программирование, зачем оно нужно, какие задачи решает и как ему научиться.
Что будет в статье:
▪️Что такое асинхронное программирование?
▪️В каких задачах полезно асинхронное программирование
▪️В каких задачах бесполезно асинхронное программирование
▪️Важно ли знать, как писать асинхронный код в наше время
▪️Почему стоит писать асинхронный код именно на Python
▪️Итоги
▪️С чего начинать учить asyncio
Читать статью
🔥9❤3👍2
🔥 Пять статей от редакции, собравшие больше всего отдачи:
1. Как выучить Python используя ChatGPT? - В данном видео рассмотрим способы "как изучить Python с помощью ChatGPT". Составим контент план для изучения Python и других технологий.
2. Инвариантность, ковариантность и контравариантность на примере Python - Поговорим о насущном! Инвариантность, ковариантность и контравариантность на примере Python.
3. Зачем использовать метаклассы вместо функций?
4. О новой угрозе для Python разработчиков в 2023 году или ещё один вирус в пакете PyPi.
5. Книга «Математические алгоритмы для программистов. 3D-графика, машинное обучение и моделирование на Python» - Неважно, чем вы занимаетесь — большими данными, машинным обучением, компьютерной графикой или криптографией — без математики вам не обойтись! Везде сейчас требуются базовые знания и понимание алгоритмов.
1. Как выучить Python используя ChatGPT? - В данном видео рассмотрим способы "как изучить Python с помощью ChatGPT". Составим контент план для изучения Python и других технологий.
2. Инвариантность, ковариантность и контравариантность на примере Python - Поговорим о насущном! Инвариантность, ковариантность и контравариантность на примере Python.
3. Зачем использовать метаклассы вместо функций?
4. О новой угрозе для Python разработчиков в 2023 году или ещё один вирус в пакете PyPi.
5. Книга «Математические алгоритмы для программистов. 3D-графика, машинное обучение и моделирование на Python» - Неважно, чем вы занимаетесь — большими данными, машинным обучением, компьютерной графикой или криптографией — без математики вам не обойтись! Везде сейчас требуются базовые знания и понимание алгоритмов.
👍3
Media is too big
VIEW IN TELEGRAM
🎬 Устраиваемся на работу | Выполняем тестовое задание на Junior Python разработчика | Парсинг
В данном видео выполняем тестовое задание на Junior Python разработчика с удаленной работой и зарплатой 1500р в час.
➖ https://www.youtube.com/watch?v=rEWjKt9ftjk
В данном видео выполняем тестовое задание на Junior Python разработчика с удаленной работой и зарплатой 1500р в час.
➖ https://www.youtube.com/watch?v=rEWjKt9ftjk
👍6❤1
👍11
Краткий обзор наследования
По мере расширения ваших проектов и пакетов Python вы неизбежно захотите использовать классы и т.о. применять один из фундаментальных принципов программирования – принцип DRY (Don’t repeat yourself – не повторяйся!). Наследование классов — это фантастический способ создать класс на основе другого класса, следуя принципу DRY.
Подобно тому, как это происходит в генетике, дочерний класс может «наследовать» атрибуты и методы от родителя.
В приведенном блоке кода мы продемонстрируем наследование. У нас есть дочерний класс
Мы видим, что класс
По мере расширения ваших проектов и пакетов Python вы неизбежно захотите использовать классы и т.о. применять один из фундаментальных принципов программирования – принцип DRY (Don’t repeat yourself – не повторяйся!). Наследование классов — это фантастический способ создать класс на основе другого класса, следуя принципу DRY.
Подобно тому, как это происходит в генетике, дочерний класс может «наследовать» атрибуты и методы от родителя.
В приведенном блоке кода мы продемонстрируем наследование. У нас есть дочерний класс
Child
, наследуемый от родительского класса Parent
.Мы видим, что класс
Child
«унаследовал» атрибуты и методы от класса Parent
. Без какой-либо работы с нашей стороны метод Parent.parent_method
является частью класса Child
. Чтобы воспользоваться методом Parent.__init__()
, нам нужно было явно вызвать метод и передать self
. Это потому, что, когда мы добавили метод __init__
в Child
, мы перезаписали унаследованный __init__
.👍14❤3
👾 Создание простой нейронной сети на Python
В течение последних десятилетий машинное обучение оказало огромное влияние на весь мир, и его популярность только набирает обороты. Все больше людей увлекается подотраслями этой науки, например нейронными сетями, которые разрабатываются по принципам функционирования человеческого мозга. В этой статье мы разберем код Python для простой нейронной сети, классифицирующей векторы 1х3, где первым элементом является 10.
Читать статью
В течение последних десятилетий машинное обучение оказало огромное влияние на весь мир, и его популярность только набирает обороты. Все больше людей увлекается подотраслями этой науки, например нейронными сетями, которые разрабатываются по принципам функционирования человеческого мозга. В этой статье мы разберем код Python для простой нейронной сети, классифицирующей векторы 1х3, где первым элементом является 10.
Читать статью
👍12❤1
Media is too big
VIEW IN TELEGRAM
🎬 Первые шаги в ООП: класс, объект, self
В данном видео посмотрим откуда есть вообще пошло ООП, в чем его суть, когда оно может применяться.
Внимание! ООП - это сложная тема, требующая вдумчивого изучения и практики, обязательно нужно читать литературу, документацию и писать свои классы, чтобы понять происходящее.
➖ https://www.youtube.com/watch?v=odY5dlZifFE
В данном видео посмотрим откуда есть вообще пошло ООП, в чем его суть, когда оно может применяться.
Внимание! ООП - это сложная тема, требующая вдумчивого изучения и практики, обязательно нужно читать литературу, документацию и писать свои классы, чтобы понять происходящее.
➖ https://www.youtube.com/watch?v=odY5dlZifFE
🔥8👍3❤2
Что выдаёт этот код?
Anonymous Quiz
26%
<class 'int'>
39%
<class 'range'>
19%
<class 'list'>
3%
<class 'float'>
13%
Error
👍18❤1🤯1
🔥 Django. Как написать блочный шаблонный тег tabbar наподобие тега blocktranslate.
В этой статье расскажу о том, как именно можно написать простой блочный шаблонный тег, наподобие тега blocktranslate в Django.
Читать статью
В этой статье расскажу о том, как именно можно написать простой блочный шаблонный тег, наподобие тега blocktranslate в Django.
Читать статью
👍8❤1
Модуль calendar
Хочешь быть крутым в школе? Разберем как вывести календарь на питоне.
В Python есть встроенный модуль Calendar, который содержит полезные классы и функции для поддержки различных операций с календарем. По умолчанию модуль «Calendar» следует григорианскому календарю, где понедельник – это первый день (0) недели, а воскресенье –последний день недели (6).
В Python модули datetime и time также предоставляют низкоуровневые функции, связанные с календарем. В дополнение к этим модулям, модуль Calendar предоставляет важные функции, связанные с отображением и управлением календарями.
С первой половиной, думаю, все понятно. Разберем 2й код:
Разбираем другие функции модуля? 🔥
Хочешь быть крутым в школе? Разберем как вывести календарь на питоне.
В Python есть встроенный модуль Calendar, который содержит полезные классы и функции для поддержки различных операций с календарем. По умолчанию модуль «Calendar» следует григорианскому календарю, где понедельник – это первый день (0) недели, а воскресенье –последний день недели (6).
В Python модули datetime и time также предоставляют низкоуровневые функции, связанные с календарем. В дополнение к этим модулям, модуль Calendar предоставляет важные функции, связанные с отображением и управлением календарями.
С первой половиной, думаю, все понятно. Разберем 2й код:
calendar.calendar(yyyy, w, l, c, m)
Вышеупомянутая функция возвращает календарь на весь год для года, указанного в качестве аргумента. В эту функцию передаются следующие аргументы: год (yyyy), ширина столбца даты (w), количество строк в неделю (l), количество пробелов между столбцом месяца (c), количество столбцов (m).Разбираем другие функции модуля? 🔥
🔥53👍13❤1🤯1
Media is too big
VIEW IN TELEGRAM
🎬 Binance Telegram Bot on Python / Закрытие позиций, отмена лимиток, кнопки на Питоне для Binance
Пишем телеграм бота, который будет помогать трейдеру торговать на бирже. Бот будет проверять, есть ли открытые лимитные заявки, открытые сделки на бирже, показывать баланс, а также по нажатию на кнопку, будет закрывать все открытые позиции.
➖ https://www.youtube.com/watch?v=lr4ksSgvxIU
Пишем телеграм бота, который будет помогать трейдеру торговать на бирже. Бот будет проверять, есть ли открытые лимитные заявки, открытые сделки на бирже, показывать баланс, а также по нажатию на кнопку, будет закрывать все открытые позиции.
➖ https://www.youtube.com/watch?v=lr4ksSgvxIU
👍7🤔1