"Датаклассы Наконец-то спустя год дошли руки написать про датаклассы 🌷 Меня спросили на собесе в ламоду, и тогда я про них либо краем уха слышала, либо вообще не слышала. Но точно не использовала. Посмотрим, что с ними можно делать Зачем? Датакласс описывает данные, но без кучи лишних методов. Он сам вместо нас добавит `__init__, __repr__, __eq__` по дефолту. Набор методов можем сами менять с помощью флагов Как создать? Чтобы датаклассы заработали, нужно их импорнуть и добавить в виде аннотации: ``` from dataclasses import dataclass @dataclass class SparkParams: """"""Dataclass для параметров spark-submit команды."""""" name: str deploy_mode: str driver_cores: int driver_memory: str executor_cores: int executor_memory: str num_executors: int ``` Готово! Никакие методы добавлять не нужно Как использовать? ``` spark_params = SparkParams(""test_app"", ""cluster"", 2, ""4g"", 4, ""32g"", 8) ``` Другие фишки Запрещаем менять поля: ``` @dataclass(frozen=True) ``` Задаем дефолтные значения: ``` @dataclass class Team: description: str | None = None emails: list[str] = field(default_factory=list) # для list/dict/set ``` Чуть подробнее можно прочитать в короткой статье @data_engineerette"
"Датаклассы Наконец-то спустя год дошли руки написать про датаклассы 🌷 Меня…
Из этого канала
- #559"AI-эра 🤵 Я последние пару недель жестко подсела на видосы с фаундерами, CEO на…
"AI-эра 🤵 Я последние пару недель жестко подсела на видосы с фаундерами, CEO на тему бизнеса и AI.
- #566Самый дурацкий кусок кода У вас есть такой код, который вы один раз увидели, но…
Самый дурацкий кусок кода У вас есть такой код, который вы один раз увидели, но никогда не забудете? Потому что он был настолько странным и запомнился надолго…
- #567"Как я проводила собесы Собесы я хотела проводить еще года 4 назад. Но тогда…
"Как я проводила собесы Собесы я хотела проводить еще года 4 назад. Но тогда брали коллегу, которая пришла чуть раньше меня( Но моя цель все-таки…
- #556Iceberg — это must have? Вы еще не замечали, что становится больше вакансий,…
Iceberg — это must have? Вы еще не замечали, что становится больше вакансий, где айсберг уже требуют? С одной стороны, если посмотреть на hh, то вакансий с…
- #555AI в OpenSource 🤓 У нас была проблема: аналитики переписывают свои скрипты с…
AI в OpenSource 🤓 У нас была проблема: аналитики переписывают свои скрипты с синтаксиса Trino на Spark, и в DDL они постоянно забывают поменять varchar на…