#python python... PYTHON 🔛 🚀
11 subscribers
914 photos
7 videos
158 files
1.54K links
Download Telegram
🖥 Как работают метаклассы

- перехватить создание класса
- изменить класс
- вернуть модифицированный

Зачем вообще использовать метаклассы
Основное применение метаклассов это создание 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», Марк Лутц

Материал в книге изложен доступно и понятно. Автор очень подробно рассматривает общие концепции, что дает полное понимание структуры языка.

🟢 «A Byte of Python», Сваруп Читлур

Описывает язык Python 3. Если ваши знания о компьютере ограничиваются тем, как сохранять текстовые файлы — эта книга для вас.

🟢 «Изучаем Python: программирование игр, визуализация данных, веб-приложения», Эрик Мэтиз

Must read, самое популярное в мире руководство по языку Python. Научит писать программы, устранять ошибки и создавать работающие приложения.

🟢 «Код. Тайный язык информатики», Чарльз Петцольд

Научно-популярно о том, как персональные компьютеры работают на аппаратном и программном уровне.

🟢 «Основы программирования на языке Python», Дмитрий Златопольский

Простым языком описаны основные типовые задачи и методы их решения с подробными комментариями. Приводятся типичные ошибки начинающих и дается ряд полезных советов.

🟢 «Python, Django и PyCharm для начинающих», Анатолий Постолит

Разбираются вопросы разработки веб-приложений с использованием Python, фреймворка Django и интерактивной среды разработки PyCharm.

➡️А вы читали что-нибудь из этого списка или есть книги, которые бы вы хотели посоветовать? Ждем ваши рекомендации в комментариях
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 Что такое утиная типизация

Неявная типизация, латентная типизация или утиная типизация (англ. 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
Всем привет в новом году!

Первый пост - первая статья.

Посвящена она распараллеливании задач.
В статье вы увидите пример использования этих инструментов для загрузки изображений из сети.

Что в статье:
- multiprocessing
- concurrent
- asyncio

Наглядный пример, что в данном случае работает лучше и почему.

В общем, очень полезно, поэтому изучайте 😉
Forwarded from Big Data AI
📚 20 лучших бесплатных книг по Python для начинающих и продвинутых программистов

Настоящий новогодний подарок всем Python разработчикам.

✔️ Смотреть список

@bigdatai
Channel name was changed to «#python python... PYTHON 🔛 🚀»
Использование методов А/Б тестирования. Решение практического кейса в Python #habr
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/

#основы #паттерны
Forwarded from Zen of Python
Создаём Telegram бот с регистрацией пользователей из таблицы в Airtable + Python

Простая, но нестандартная реализация регистрации пользователей через 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
Forwarded from Zen of Python
Никто:

Я, написавший «Hello, World» на Python жду оффер на 150к:
Forwarded from Zen of Python
Полуфинал битвы языков программирования 2022 объявляется открытым

Сегодня за звание самого популярного языка поборются Python и Typescript, а также C# и Java. Но мы, конечно, знаем за какой язык голосовать. Правда, питонисты?

Скорее переходите по ссылке и оставляйте свой голос лучшему, пока голосование не закончилось:

https://tproger.ru/articles/polufinal-bitvy-jazykov-programmirovanija-2022/