Forwarded from Python вопросы с собеседований
- перехватить создание класса
- изменить класс
- вернуть модифицированный
Зачем вообще использовать метаклассы
Основное применение метаклассов это создание API. Типичный пример — Django ORM.
Она позволяет написать что-то в таком духе:
class Person(models.Model):
name = models.CharField(max_length=30)
age = models.IntegerField()
Однако если вы выполните следующий код:
guy = Person(name='bob', age='35')
print guy.age
вы получите не
IntegerField
, а int, причём значение может быть получено прямо из базы данных.Это возможно, потому что models.Model определяет
__metaclass__
, который сотворит некую магию и превратит класс Person, который мы только что определили простым выражением в сложную привязку к базе данных.Django делает что-то сложное выглядящее простым, выставляя наружу простой API и используя метаклассы, воссоздающие код из API и незаметно делающие всю работу.
@python_job_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Мathshub
Мы подготовили подборку, которая будет полезна тем, кто интересуется изучением Python.
Материал в книге изложен доступно и понятно. Автор очень подробно рассматривает общие концепции, что дает полное понимание структуры языка.
Описывает язык Python 3. Если ваши знания о компьютере ограничиваются тем, как сохранять текстовые файлы — эта книга для вас.
Must read, самое популярное в мире руководство по языку Python. Научит писать программы, устранять ошибки и создавать работающие приложения.
Научно-популярно о том, как персональные компьютеры работают на аппаратном и программном уровне.
Простым языком описаны основные типовые задачи и методы их решения с подробными комментариями. Приводятся типичные ошибки начинающих и дается ряд полезных советов.
Разбираются вопросы разработки веб-приложений с использованием Python, фреймворка Django и интерактивной среды разработки PyCharm.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Python вопросы с собеседований
Неявная типизация, латентная типизация или утиная типизация (англ. Duck typing) – вид динамической типизации, применяемой в некоторых языках программирования (Perl, Smalltalk, Python, Objective-C, Ruby, JavaScript, Groovy, ColdFusion, Boo, Lua, Go, C#), когда границы использования объекта определяются его текущим набором методов и свойств, в противоположность наследованию от определённого класса. То есть считается, что объект реализует интерфейс, если он содержит все методы этого интерфейса, независимо от связей в иерархии наследования и принадлежности к какому-либо конкретному классу.
Утиная типизация решает такие проблемы иерархической типизации, как:
- невозможность явно указать (путём наследования) на совместимость интерфейса со всеми настоящими и будущими интерфейсами, с которыми он идейно совместим;
-экспоненциальное увеличение числа связей в иерархии типов при хотя бы частичной попытке это сделать.
@python_job_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Магия данных | Артур Сапрыкин
Всем привет в новом году!
Первый пост - первая статья.
Посвящена она распараллеливании задач.
В статье вы увидите пример использования этих инструментов для загрузки изображений из сети.
Что в статье:
- multiprocessing
- concurrent
- asyncio
Наглядный пример, что в данном случае работает лучше и почему.
В общем, очень полезно, поэтому изучайте 😉
Первый пост - первая статья.
Посвящена она распараллеливании задач.
В статье вы увидите пример использования этих инструментов для загрузки изображений из сети.
Что в статье:
- multiprocessing
- concurrent
- asyncio
Наглядный пример, что в данном случае работает лучше и почему.
В общем, очень полезно, поэтому изучайте 😉
Medium
asyncio — The underrated weapon for ML
Over the last few years, I have spent significant time deploying machine learning applications in production. When I was an active…
Лучшие новые библиотеки Python за 2022 год / Хабр
https://habr.com/ru/post/707916/
https://habr.com/ru/post/707916/
Хабр
Лучшие новые библиотеки Python за 2022 год
В пост включены библиотеки, которые были запущены или приобрели популярность в этом году, хорошо поддерживаются, а также просто классные и достойные внимания. Подборка в значительной степени...
Forwarded from Big Data AI
📚 20 лучших бесплатных книг по Python для начинающих и продвинутых программистов
Настоящий новогодний подарок всем Python разработчикам.
✔️ Смотреть список
@bigdatai
Настоящий новогодний подарок всем Python разработчикам.
✔️ Смотреть список
@bigdatai
Лучшие open-source инструменты для Python проектов #habr
https://habr.com/ru/post/708916/
Tags: Django, Flask, Open source, Python, open-source, FastAPI, developer experience, pre-commit
Author: lawxls
https://habr.com/ru/post/708916/
Tags: Django, Flask, Open source, Python, open-source, FastAPI, developer experience, pre-commit
Author: lawxls
Хабр
Лучшие open-source инструменты для Python проектов
"Give me six hours to chop down a tree and I will spend the first four sharpening the axe." Open-source проекты, сторонние инструменты и библиотеки - это то, за что мы действительно любим Python . В...
Использование методов А/Б тестирования. Решение практического кейса в Python #habr
https://habr.com/ru/post/708872/
Tags: Python, Визуализация данных, Машинное обучение, Логистическая регрессия, cuped, Causal random forest, гетерогенный эффект воздействия, а/в-тесты
Author: oluscha
https://habr.com/ru/post/708872/
Tags: Python, Визуализация данных, Машинное обучение, Логистическая регрессия, cuped, Causal random forest, гетерогенный эффект воздействия, а/в-тесты
Author: oluscha
Forwarded from Zen of Python
Как работает Pattern Memento (Снимок)
Снимок — это поведенческий паттерн проектирования, который позволяет сохранять и восстанавливать прошлые состояния объектов, не раскрывая подробностей их реализации. В этой статье автор простым языком попытался объяснить принцип его работы и способ реализации:
https://habr.com/ru/post/689948/
#основы #паттерны
Снимок — это поведенческий паттерн проектирования, который позволяет сохранять и восстанавливать прошлые состояния объектов, не раскрывая подробностей их реализации. В этой статье автор простым языком попытался объяснить принцип его работы и способ реализации:
https://habr.com/ru/post/689948/
#основы #паттерны
Forwarded from Zen of Python
Создаём Telegram бот с регистрацией пользователей из таблицы в Airtable + Python
Простая, но нестандартная реализация регистрации пользователей через Telegram-бота с помощью таблицы в Airtable и Python. Подробнее:
https://habr.com/ru/post/692504/
#telegram #бот
Простая, но нестандартная реализация регистрации пользователей через Telegram-бота с помощью таблицы в Airtable и Python. Подробнее:
https://habr.com/ru/post/692504/
#telegram #бот
Forwarded from Zen of Python
Matplotlib для python
Ловите подборку видеоуроков по Matplotlib. Вы изучите что такое Matplotlib, зачем нужен, как установить и, главное, как его грамотно использовать.
Смотрим тут:
https://www.youtube.com/playlist?list=PLA0M1Bcd0w8xQx-X5a6eSEOYULNSnHN_p
#видео #matplotlib
Ловите подборку видеоуроков по Matplotlib. Вы изучите что такое Matplotlib, зачем нужен, как установить и, главное, как его грамотно использовать.
Смотрим тут:
https://www.youtube.com/playlist?list=PLA0M1Bcd0w8xQx-X5a6eSEOYULNSnHN_p
#видео #matplotlib
Forwarded from Zen of Python
Forwarded from Zen of Python
Полуфинал битвы языков программирования 2022 объявляется открытым
Сегодня за звание самого популярного языка поборются Python и Typescript, а также C# и Java. Но мы, конечно, знаем за какой язык голосовать. Правда, питонисты?
Скорее переходите по ссылке и оставляйте свой голос лучшему, пока голосование не закончилось:
https://tproger.ru/articles/polufinal-bitvy-jazykov-programmirovanija-2022/
Сегодня за звание самого популярного языка поборются Python и Typescript, а также C# и Java. Но мы, конечно, знаем за какой язык голосовать. Правда, питонисты?
Скорее переходите по ссылке и оставляйте свой голос лучшему, пока голосование не закончилось:
https://tproger.ru/articles/polufinal-bitvy-jazykov-programmirovanija-2022/