Начиная с Python 3.0, при возникновении нового исключения внутри блока
Кроме того, вы можете явно указать причинное исключение, использовав конструкцию
#python
👉 @python_real
except перехваченное исключение автоматически сохраняется в атрибуте __context__ создаваемого исключения. В результате при выводе будут показаны оба исключения:
try:
1 / 0
except ZeroDivisionError:
raise ValueError('Zero!')
(most recent call last):
File "test.py", line 2, in <module>
1 / 0
ZeroDivisionError: division by zero
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "test.py", line 4, in <module>
raise ValueError('Zero!')
ValueError: Zero!
Кроме того, вы можете явно указать причинное исключение, использовав конструкцию
raise … from. Тогда в атрибут __cause__ нового исключения будет помещено исходное:
division_error = None
try:
1 / 0
except ZeroDivisionError as e:
division_error = e
raise ValueError('Zero!') from division_error
(most recent call last):
File "test.py", line 4, in <module>
1 / 0
ZeroDivisionError: division by zero
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "test.py", line 8, in <module>
raise ValueError('Zero!') from division_error
ValueError: Zero!
#python
👉 @python_real
👍1
🐍 SOLID принципы в Python: Фундамент чистого кода
Хотите писать код, который легко поддерживать, тестировать и масштабировать? Тогда вам точно стоит внедрить в свои проекты принципы SOLID. Это «золотой стандарт» объектно-ориентированного программирования, который отлично ложится и на Python.
🔹 S - Single Responsibility (Принцип единственной ответственности)
У класса должна быть только одна причина для изменения. Не делайте «божественные объекты», которые умеют всё. Разделяйте логику: один класс управляет файлами, другой - сжимает их в zip.
🔹 O - Open-Closed (Принцип открытости/закрытости)
Сущности (классы, модули) должны быть открыты для расширения, но закрыты для модификации. Хотите добавить новую фигуру? Не переписывайте старый класс, а создайте новый, наследуясь от абстракции.
🔹 L - Liskov Substitution (Принцип подстановки Барбары Лисков)
Объекты подклассов должны заменять объекты родительских классов без поломки кода. Если
🔹 I - Interface Segregation (Принцип разделения интерфейса)
Клиенты не должны зависеть от методов, которые они не используют. В Python это решается через создание узкоспециализированных абстрактных классов или протоколов (Protocols), вместо одного огромного интерфейса.
🔹 D - Dependency Inversion (Принцип инверсии зависимостей)
Модули верхних уровней не должны зависеть от модулей нижних уровней. Оба должны зависеть от абстракций. Используйте dependency injection, чтобы код был гибким.
👉 Читать полный гайд с примерами рефакторинга: https://realpython.com/solid-principles-python/
👉 @python_real
Хотите писать код, который легко поддерживать, тестировать и масштабировать? Тогда вам точно стоит внедрить в свои проекты принципы SOLID. Это «золотой стандарт» объектно-ориентированного программирования, который отлично ложится и на Python.
🔹 S - Single Responsibility (Принцип единственной ответственности)
У класса должна быть только одна причина для изменения. Не делайте «божественные объекты», которые умеют всё. Разделяйте логику: один класс управляет файлами, другой - сжимает их в zip.
🔹 O - Open-Closed (Принцип открытости/закрытости)
Сущности (классы, модули) должны быть открыты для расширения, но закрыты для модификации. Хотите добавить новую фигуру? Не переписывайте старый класс, а создайте новый, наследуясь от абстракции.
🔹 L - Liskov Substitution (Принцип подстановки Барбары Лисков)
Объекты подклассов должны заменять объекты родительских классов без поломки кода. Если
Square наследуется от Rectangle, он должен вести себя как прямоугольник во всех ситуациях (спойлер: это часто вызывает проблемы).🔹 I - Interface Segregation (Принцип разделения интерфейса)
Клиенты не должны зависеть от методов, которые они не используют. В Python это решается через создание узкоспециализированных абстрактных классов или протоколов (Protocols), вместо одного огромного интерфейса.
🔹 D - Dependency Inversion (Принцип инверсии зависимостей)
Модули верхних уровней не должны зависеть от модулей нижних уровней. Оба должны зависеть от абстракций. Используйте dependency injection, чтобы код был гибким.
👉 Читать полный гайд с примерами рефакторинга: https://realpython.com/solid-principles-python/
👉 @python_real
👍2
Уже сегодня вечером в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.
Как это будет:
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_py_bot
Реклама.
О рекламодателе.
Please open Telegram to view this post
VIEW IN TELEGRAM
Метод
Имя поля используется для указания, какой именно аргумент должен быть подставлен:
Преобразование позволяет указать, что вместо
Спецификация формата задаёт, как значения будут представлены:
Эта спецификация может быть применена и к отдельному объекту с помощью функции
Функция
#python
👉 @python_real
format в Python для строк — мощный инструмент, поддерживающий множество возможностей, о которых вы, возможно, даже не знали. Каждый заменяемый плейсхолдер ({...}) может содержать три части: имя поля, преобразование и спецификацию формата.Имя поля используется для указания, какой именно аргумент должен быть подставлен:
>>> '{}'.format(42)
'42'
>>> '{1}'.format(1, 2)
'2'
>>> '{y}'.format(x=1, y=2)
'2'
Преобразование позволяет указать, что вместо
str() следует использовать repr() (или ascii()) при преобразовании объектов в строки:
>>> '{!r}'.format(datetime.now())
'datetime.datetime(2018, 5, 3, 23, 48, 49, 157037)'
>>> '{}'.format(datetime.now())
'2018-05-03 23:49:01.060852'
Спецификация формата задаёт, как значения будут представлены:
>>> '{:+,}'.format(1234567)
'+1,234,567'
>>> '{:>19}'.format(1234567)
' 1234567'
Эта спецификация может быть применена и к отдельному объекту с помощью функции
format (не метода str):
>>> format(5000000, '+,')
'+5,000,000'
Функция
format вызывает метод __format__ объекта, поэтому вы можете изменить его поведение для своих типов.#python
👉 @python_real
❤1👍1
🐍 Интерфейсы в Python: когда
В Python нет привычных интерфейсов, как в Java или C#, но это не значит, что их нельзя использовать. На практике разработчики применяют несколько подходов — от обычного duck typing до абстрактных базовых классов (
Что важно знать:
🔹 Duck typing — классический подход Python. Если объект реализует нужные методы, значит, он подходит, независимо от наследования.
🔹 ABC (Abstract Base Classes) — позволяют явно определить набор обязательных методов. Если наследник не реализует их, создать экземпляр класса не получится.
🔹 Protocol — современный способ описывать интерфейсы без наследования. Особенно полезен при использовании статической проверки типов (
💡 Когда что использовать?
* Небольшие проекты — достаточно duck typing.
* Средние и крупные проекты —
* Современные кодовые базы с type hints — чаще всего лучший выбор
Если вы до сих пор считаете, что интерфейсов в Python нет, возможно, вы просто ещё не познакомились с
https://realpython.com/python-interface/
#python
👉 @python_real
ABC уже недостаточно?В Python нет привычных интерфейсов, как в Java или C#, но это не значит, что их нельзя использовать. На практике разработчики применяют несколько подходов — от обычного duck typing до абстрактных базовых классов (
abc) и современных Protocol из модуля typing. Что важно знать:
🔹 Duck typing — классический подход Python. Если объект реализует нужные методы, значит, он подходит, независимо от наследования.
🔹 ABC (Abstract Base Classes) — позволяют явно определить набор обязательных методов. Если наследник не реализует их, создать экземпляр класса не получится.
🔹 Protocol — современный способ описывать интерфейсы без наследования. Особенно полезен при использовании статической проверки типов (
mypy, Pyright и др.). Код становится гибче, а зависимости между классами — слабее. 💡 Когда что использовать?
* Небольшие проекты — достаточно duck typing.
* Средние и крупные проекты —
ABC помогает избежать ошибок реализации.* Современные кодовые базы с type hints — чаще всего лучший выбор
Protocol, который не требует наследования и отлично сочетается с IDE и статическими анализаторами. Если вы до сих пор считаете, что интерфейсов в Python нет, возможно, вы просто ещё не познакомились с
Protocol.https://realpython.com/python-interface/
#python
👉 @python_real
👍1
🔴 Завтра тестовое собеседование на Middle Python с разработчиком из Авито
Уже завтра вечером в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.
Как это будет:
📂 Даня, старший разработчик в Авито, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Даня будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Дане
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_py_bot
Реклама.
О рекламодателе.
Уже завтра вечером в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.
Как это будет:
📂 Даня, старший разработчик в Авито, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Даня будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Дане
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_py_bot
Реклама.
О рекламодателе.
🚀 Подборка полезных IT каналов в Max
Системное администрирование, DevOps 📌
https://max.ru/i_odmin Все для системного администратора
https://max.ru/bash_srv Bash Советы
https://max.ru/sysadminof Книги для админов, полезные материалы
https://max.ru/i_odmin_book Библиотека Системного Администратора
https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др.
https://max.ru/tipsysdmin Типичный Сисадмин
https://max.ru/channel_win_sysadmin Системный Администратор Windows
https://max.ru/channel_linux_admin Linux: Системный администратор
https://max.ru/channel_linuxmod Linux
https://max.ru/channel_i_linux Системный администратор
https://max.ru/channel_devopslib DevOps, SRE, Sysadmin
https://max.ru/channel_devops_star DevOps Star (Звезда Девопса)
Excel лайфхак 📌
https://t.me/Excel_lifehack Excel лайфхак
Английский с нуля 🇬🇧
https://max.ru/UchuEnglish
1C разработка 📌
https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С
https://max.ru/channel_DevLab1C 1С:Предприятие 8
Программирование C++📌
https://max.ru/cpp_lib Библиотека C/C++ разработчика
https://max.ru/channel_cpp_geek C++ geek
Программирование Go📌
https://max.ru/golang_lib Библиотека Go (Golang) разработчика
Программирование React📌
https://max.ru/react_lib React
Программирование Rust📌
https://max.ru/channel_rust_lib
Программирование Python 📌
https://max.ru/python_of Python академия.
https://max.ru/BookPython Библиотека Python разработчика
Java разработка 📌
https://max.ru/bookjava Библиотека Java разработчика
https://max.ru/channel_java_geek Java Geek
GitHub Сообщество 📌
https://max.ru/githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://max.ru/database_info Все про базы данных
Фронтенд разработка 📌
https://max.ru/frontend_1 Подборки для frontend разработчиков
Библиотеки 📌
https://max.ru/programmist_of Книги по программированию
https://max.ru/proglb Библиотека программиста
https://max.ru/bfbook Книги для программистов
Программирование 📌
https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций
https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT
https://max.ru/php_lib Библиотека PHP программиста 👨🏼💻👩💻
Шутки программистов 📌
https://max.ru/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://max.ru/thehaking Канал о кибербезопасности
https://max.ru/xakkep_1 Хакер Free
Книги, статьи для дизайнеров 📌
https://max.ru/odesigners Статьи, книги для дизайнеров
Математика 📌
https://max.ru/Pomatematike Канал по математике
https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике
Вакансии в IT📌
https://max.ru/progjob
https://max.ru/channel_rabotait
Мир технологий 📌
https://max.ru/mir_teh Канал для любознательных
Городские📌
https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга
https://max.ru/mockva_life Свежие новости Москвы
https://max.ru/piterspb Питер Новости: Санкт-Петербург / СПБ / ДТП
https://max.ru/channel_krasnodar_novosty Краснодар Новости
https://max.ru/channel_novosibirsk_novosti Новосибирск
https://max.ru/channel_samara_novosti Новости Самары
https://max.ru/channel_ekaterinburg_novosti Новости Екатеринбурга
https://max.ru/channel_kazan_novosti Новости Казани
https://max.ru/channel_omsk_novosti Новости Омска
https://max.ru/channel_moskva_24 Москва 24
Системное администрирование, DevOps 📌
https://max.ru/i_odmin Все для системного администратора
https://max.ru/bash_srv Bash Советы
https://max.ru/sysadminof Книги для админов, полезные материалы
https://max.ru/i_odmin_book Библиотека Системного Администратора
https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др.
https://max.ru/tipsysdmin Типичный Сисадмин
https://max.ru/channel_win_sysadmin Системный Администратор Windows
https://max.ru/channel_linux_admin Linux: Системный администратор
https://max.ru/channel_linuxmod Linux
https://max.ru/channel_i_linux Системный администратор
https://max.ru/channel_devopslib DevOps, SRE, Sysadmin
https://max.ru/channel_devops_star DevOps Star (Звезда Девопса)
Excel лайфхак 📌
https://t.me/Excel_lifehack Excel лайфхак
Английский с нуля 🇬🇧
https://max.ru/UchuEnglish
1C разработка 📌
https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С
https://max.ru/channel_DevLab1C 1С:Предприятие 8
Программирование C++📌
https://max.ru/cpp_lib Библиотека C/C++ разработчика
https://max.ru/channel_cpp_geek C++ geek
Программирование Go📌
https://max.ru/golang_lib Библиотека Go (Golang) разработчика
Программирование React📌
https://max.ru/react_lib React
Программирование Rust📌
https://max.ru/channel_rust_lib
Программирование Python 📌
https://max.ru/python_of Python академия.
https://max.ru/BookPython Библиотека Python разработчика
Java разработка 📌
https://max.ru/bookjava Библиотека Java разработчика
https://max.ru/channel_java_geek Java Geek
GitHub Сообщество 📌
https://max.ru/githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://max.ru/database_info Все про базы данных
Фронтенд разработка 📌
https://max.ru/frontend_1 Подборки для frontend разработчиков
Библиотеки 📌
https://max.ru/programmist_of Книги по программированию
https://max.ru/proglb Библиотека программиста
https://max.ru/bfbook Книги для программистов
Программирование 📌
https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций
https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT
https://max.ru/php_lib Библиотека PHP программиста 👨🏼💻👩💻
Шутки программистов 📌
https://max.ru/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://max.ru/thehaking Канал о кибербезопасности
https://max.ru/xakkep_1 Хакер Free
Книги, статьи для дизайнеров 📌
https://max.ru/odesigners Статьи, книги для дизайнеров
Математика 📌
https://max.ru/Pomatematike Канал по математике
https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике
Вакансии в IT📌
https://max.ru/progjob
https://max.ru/channel_rabotait
Мир технологий 📌
https://max.ru/mir_teh Канал для любознательных
Городские📌
https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга
https://max.ru/mockva_life Свежие новости Москвы
https://max.ru/piterspb Питер Новости: Санкт-Петербург / СПБ / ДТП
https://max.ru/channel_krasnodar_novosty Краснодар Новости
https://max.ru/channel_novosibirsk_novosti Новосибирск
https://max.ru/channel_samara_novosti Новости Самары
https://max.ru/channel_ekaterinburg_novosti Новости Екатеринбурга
https://max.ru/channel_kazan_novosti Новости Казани
https://max.ru/channel_omsk_novosti Новости Омска
https://max.ru/channel_moskva_24 Москва 24
MAX
Системный Администратор | Sysadmin Windows & Linux Server. …
Купить рекламу: https://telega.in/m/i_odmin
Блог практикующего админа. Настройка Windows Server, Active Directory (AD), GPO и терминальных серверов (RDP). Раб…
Блог практикующего админа. Настройка Windows Server, Active Directory (AD), GPO и терминальных серверов (RDP). Раб…
👎2
🐍 Как использовать Claude Code для разработки и отладки проектов на Python
Real Python опубликовал подробное руководство по работе с Claude Code — консольным ИИ-инструментом, который запускается непосредственно в каталоге проекта.
В отличие от браузерных чат-ботов, Claude Code может:
🔹 изучать структуру проекта и содержимое файлов;
🔹 создавать и редактировать код;
🔹 показывать изменения в формате diff;
🔹 запускать команды и тесты;
🔹 искать и исправлять ошибки;
🔹 работать с Git и создавать коммиты.
В руководстве предлагается с нуля разработать на Python консольный менеджер контактов. Сначала Claude Code составляет план и структуру приложения, затем генерирует код, проверяет его работу и пишет тесты. После этого инструмент используют для анализа уже существующего проекта и исправления найденных проблем.
Отдельное внимание уделено безопасному рабочему процессу:
✅ запускать Claude Code только внутри каталога проекта;
✅ начинать сложные задачи в режиме Plan;
✅ хранить требования к проекту в файле
✅ проверять каждый diff перед применением;
✅ запускать тесты после изменений;
✅ регулярно создавать коммиты, чтобы иметь возможность отката.
Для работы потребуется платная подписка Claude либо учётная запись Anthropic Console с подключённой оплатой API.
https://realpython.com/how-to-use-claude-code/
#python
👉 @python_real
Real Python опубликовал подробное руководство по работе с Claude Code — консольным ИИ-инструментом, который запускается непосредственно в каталоге проекта.
В отличие от браузерных чат-ботов, Claude Code может:
🔹 изучать структуру проекта и содержимое файлов;
🔹 создавать и редактировать код;
🔹 показывать изменения в формате diff;
🔹 запускать команды и тесты;
🔹 искать и исправлять ошибки;
🔹 работать с Git и создавать коммиты.
В руководстве предлагается с нуля разработать на Python консольный менеджер контактов. Сначала Claude Code составляет план и структуру приложения, затем генерирует код, проверяет его работу и пишет тесты. После этого инструмент используют для анализа уже существующего проекта и исправления найденных проблем.
Отдельное внимание уделено безопасному рабочему процессу:
✅ запускать Claude Code только внутри каталога проекта;
✅ начинать сложные задачи в режиме Plan;
✅ хранить требования к проекту в файле
CLAUDE.md;✅ проверять каждый diff перед применением;
✅ запускать тесты после изменений;
✅ регулярно создавать коммиты, чтобы иметь возможность отката.
Для работы потребуется платная подписка Claude либо учётная запись Anthropic Console с подключённой оплатой API.
https://realpython.com/how-to-use-claude-code/
#python
👉 @python_real
👍2
🐍 Асинхронное программирование в Python: от генераторов до asyncio
Почему обычная программа простаивает во время сетевых запросов, обращения к базе данных или чтения файлов? И как заставить её выполнять другие задачи, пока она ждёт ответа?
В новом подробном руководстве Real Python асинхронность разбирают постепенно — от синхронного кода и генераторов с yield до полноценной работы с asyncio.
Из материала вы узнаете:
🔹 чем синхронное выполнение отличается от асинхронного;
🔹 что такое блокирующие и неблокирующие операции;
🔹 как устроен цикл событий;
🔹 как работают async, await и корутины;
🔹 как запускать несколько задач через asyncio.TaskGroup;
🔹 почему асинхронность особенно полезна для HTTP-запросов, баз данных и другого I/O;
🔹 как отслеживать состояние выполняющихся задач.
Авторы не просто показывают готовый код, а последовательно создают собственную модель кооперативной многозадачности на генераторах. Благодаря этому становится понятнее, что именно скрывается за работой asyncio.
Примеры рассчитаны на Python 3.11 и новее. К статье прилагаются исходники и интерактивный тест.
https://realpython.com/python-async-features/
#python
👉 @python_real
Почему обычная программа простаивает во время сетевых запросов, обращения к базе данных или чтения файлов? И как заставить её выполнять другие задачи, пока она ждёт ответа?
В новом подробном руководстве Real Python асинхронность разбирают постепенно — от синхронного кода и генераторов с yield до полноценной работы с asyncio.
Из материала вы узнаете:
🔹 чем синхронное выполнение отличается от асинхронного;
🔹 что такое блокирующие и неблокирующие операции;
🔹 как устроен цикл событий;
🔹 как работают async, await и корутины;
🔹 как запускать несколько задач через asyncio.TaskGroup;
🔹 почему асинхронность особенно полезна для HTTP-запросов, баз данных и другого I/O;
🔹 как отслеживать состояние выполняющихся задач.
Авторы не просто показывают готовый код, а последовательно создают собственную модель кооперативной многозадачности на генераторах. Благодаря этому становится понятнее, что именно скрывается за работой asyncio.
Примеры рассчитаны на Python 3.11 и новее. К статье прилагаются исходники и интерактивный тест.
https://realpython.com/python-async-features/
#python
👉 @python_real
👍1🔥1
Уже завтра вечером в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.
Как это будет:
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_py_bot
Реклама.
О рекламодателе.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🐍 В Python 3.15 появится
Это встроенный тип для случаев, когда данные должны оставаться неизменными после создания: например, для настроек или результатов вычислений.
Если ключи и значения поддерживают хеширование,
Функция уже описана в PEP 814 https://peps.python.org/pep-0814/) и включена в предварительные версии Python 3.15.
Подробнее в статье https://realpython.com/python315-frozendict/
#python
👉 @python_real
frozendict - словарь, который нельзя изменитьЭто встроенный тип для случаев, когда данные должны оставаться неизменными после создания: например, для настроек или результатов вычислений.
settings = frozendict(theme="dark", language="ru")
print(settings["theme"]) # dark
settings["theme"] = "light" # TypeError
Если ключи и значения поддерживают хеширование,
frozendict можно использовать как ключ другого словаря или элемент множества. Но есть нюанс: неизменяемость не распространяется на вложенные объекты. Если внутри лежит список, его содержимое всё ещё можно менять.Функция уже описана в PEP 814 https://peps.python.org/pep-0814/) и включена в предварительные версии Python 3.15.
Подробнее в статье https://realpython.com/python315-frozendict/
#python
👉 @python_real
👍2
📊 Статистика в Python: с чего начать анализ данных
Среднее значение может скрыть важную деталь. Возьмём числа
В подробном руководстве Real Python разбирают, как описывать данные с помощью Python:
• находить среднее, медиану и моду;
• измерять разброс значений и изучать корреляцию;
• работать с выбросами и пропущенными значениями;
• строить гистограммы, диаграммы и другие графики.
Для небольших задач хватит встроенного модуля
Пример для быстрого старта:
https://realpython.com/python-statistics/
#python
👉 @python_real
Среднее значение может скрыть важную деталь. Возьмём числа
1, 2, 3, 4, 100: среднее равно 22, а медиана — 3. Одно большое значение сильно изменило картину.В подробном руководстве Real Python разбирают, как описывать данные с помощью Python:
• находить среднее, медиану и моду;
• измерять разброс значений и изучать корреляцию;
• работать с выбросами и пропущенными значениями;
• строить гистограммы, диаграммы и другие графики.
Для небольших задач хватит встроенного модуля
statistics. Для массивов, таблиц и визуализации пригодятся NumPy, pandas, SciPy и Matplotlib.Пример для быстрого старта:
from statistics import mean, median
data = [1, 2, 3, 4, 100]
print(mean(data)) # 22
print(median(data)) # 3
https://realpython.com/python-statistics/
#python
👉 @python_real
👍1
🔴 Тестовый собес на Middle Python с разработчиком из Яндекса завтра вечером!
[+ разбор 50 сложных вопросов в подарок ]
23 сентября (уже завтра) в 19:00 по мск приходи онлайн, чтобы посмотреть на настоящее интервью на Middle Python-разработчика!
Собеседование проведёт Хачатур Саркисян - ведущий разработчик из Яндекса.
Как это будет:
📂 Хачатур задаст разработчику вопросы и задачи, которые могут спросить на реальном собесе;
📂 После каждого ответа респондента ты услышишь подробный комментарий от ментора и поймёшь, чего на самом деле ожидает собеседующий на интервью;
📂 В конце сможешь задать любой вопрос Хачатуру и получить на него развёрнутый ответ.
Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
И ты можешь посмотреть его бесплатно 🔥
Только завтра, в прямом эфире!
🎁 Подарок для всех, кто зарегается на веб — файл с ОТВЕТАМИ НА 50 СЛОЖНЫХ ВОПРОСОВ с Python-собеседований 🔥
Переходи в бот, чтобы попасть на эфир и забрать подарок 👉 @shortcut_py_bot
Реклама.
О рекламодателе.
[+ разбор 50 сложных вопросов в подарок ]
23 сентября (уже завтра) в 19:00 по мск приходи онлайн, чтобы посмотреть на настоящее интервью на Middle Python-разработчика!
Собеседование проведёт Хачатур Саркисян - ведущий разработчик из Яндекса.
Как это будет:
📂 Хачатур задаст разработчику вопросы и задачи, которые могут спросить на реальном собесе;
📂 После каждого ответа респондента ты услышишь подробный комментарий от ментора и поймёшь, чего на самом деле ожидает собеседующий на интервью;
📂 В конце сможешь задать любой вопрос Хачатуру и получить на него развёрнутый ответ.
Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
И ты можешь посмотреть его бесплатно 🔥
Только завтра, в прямом эфире!
🎁 Подарок для всех, кто зарегается на веб — файл с ОТВЕТАМИ НА 50 СЛОЖНЫХ ВОПРОСОВ с Python-собеседований 🔥
Переходи в бот, чтобы попасть на эфир и забрать подарок 👉 @shortcut_py_bot
Реклама.
О рекламодателе.