#python python... PYTHON 🔛 🚀
11 subscribers
914 photos
7 videos
158 files
1.54K links
Download Telegram
Forwarded from Инжиниринг Данных (Dmitry Anoshin)
У этой специализации очень высокий рейтинг на курсере, кто-нибудь пробовал? https://www.coursera.org/professional-certificates/google-it-automation#courses
Forwarded from Python Community
⚡️ Ускоряем выполнение кода

Для этого отлично подойдёт модуль concurrent.futures — он отлично подойдёт, например, для одновременного копирования файлов или параллельных вычислений.

Первым делом стоит определится, каким образом вы собираетесь разделять выполнения: с помощью потоков или используя процессы.

Далее — создайте экземпляр класса, желательно с помощью with, или самостоятельно вызвать shutdown.

С помощью submit нужно также создать задачу, чтобы получить класс Future.

Теперь с помощью Future вы можете отслеживать выполнение функции.

Например, можно запустить result() и приостановить основный поток в ожидании результата (остальные потоки будут продолжать работать).

Если хотите почитать подробнее, можете сделать это тут.

#миниурок #concurrent
Простые шаги сделать ваш Python код лучше

Используйте Flake8 — инструмент, позволяющий просканировать код проекта и обнаружить в нем стилистические ошибки и нарушения различных конвенций кода на Python.
Помните, что flake8 не модифицирует код, а просто проверят его. Подправить ошибки придется в ручную.

У Python нет обязательной статической типизации, но рекомендуется добавлять типы в аргументы функции и возвращаемые типы. Для этого просто используйте mypy и не забудьте подправить ошибки.

Black поможет форматировать ваш код в соответствии со стандартом.

isort — это библиотека Python для сортировки импорта по алфавиту с автоматическим разделением на разделы и по типу. Очень удобно.

Вы можете запускать black, flake8 и mypy вручную, но это не удобно. Мы можем автоматизировать процесс с помощью pre-commit hook и Github Actions.

Более подробно со скриншотами, кодом и примером можно почитать в моём блоге.
Многие современные Web-приложения используют API-схемы для описания того, как они работают. Но само наличие схемы не значит, что реальное приложение будет вести себя так, как описано в схеме. Причин этому множество — от принципиальной невозможности выразить всё в схеме до обыкновенного недосмотра. Последствий тоже множество, и падение приложения — одно из самых безобидных.

Дмитрий Дыгало расскажет о Schemathesis — инструменте, который помогает решить многие из этих проблем при помощи property-based-тестирования. Если вас интересует практическое применение property-based-тестирования и то, как его внедрить, читайте об этом в нашей новой статье.

🔹А 27-28 сентября приходите на Moscow Python Conf++ 2021. Впервые за два года мы встречаемся офлайн. Нам есть, что обсудить. Билеты, расписание и тезисы докладов здесь.
Forwarded from Код Желтый
Мы идем на PyCon Russia 2021 — 4 доклада в основной программе, 1 в ML-треке и 1 воркшоп. Делимся расписанием докладов наших спикеров:

📎 5 сентября 10:50 — Андрей Алексеев «ETNA Time Series Library: удобное прогнозирование временных рядов»
📎 5 сентября 17:00 — Александр Шибаев «Внедрение зависимостей, контейнеры и прочие проявления SOLID в питоне. Как жить на большом проекте»
📎 6 сентября 12:00 — Илья Иваников «Воршкоп Flask-Admin, SQLAlchemy и FastAPI или как приготовить простой и удобный интрумент для работы с любыми унифицированными документами»
📎 6 сентября 12:50 — Антон Палий «Python и метрики. Мониторинг наше все»
📎 6 сентября 15:50 — Владислав Мухаматнуров «Автоматизатор в команде питонистов»
📎 6 сентября 15:50 — Данил Ахтаров «Кэширование — делаем всё правильно»

… и крутейшим видеоанонсом выступлений 📽 Увидимся на PyCon Russia!

https://www.youtube.com/watch?v=BFpnbBoARhs
Forwarded from Python Community
⚡️ Взаимодействуем с текстом

Для этого идеально подойдёт flashtext — модуль, позволяющий заменять или собирать информацию из строки.

Установка: pip install flashtext

Его основное преимущество над regex — скорость выполнения. Библиотека использует свой алгоритм и, таким образом, увеличивает производительность.

На примере выше представлен лишь небольшой функционал библиотеки, а изучить её полностью можно на сайте документации.

#миниурок #flashtext
Forwarded from Python School
Удаление знаков препинания

Модуль string в Python имеет множество встроенных констант с отдельными наборами символов. string.punctuation — один из них, поэтому мы будем использовать его для очистки строки.

В Python3 string.punctuation — это предварительно инициализированная строка, используемая как строковая константа. В Python string.punctuation даст все наборы знаков препинания.
Forwarded from Владимир П.
import timeit

def l():
d1 = {x: y for x, y in zip(range(40), range(0,1000))}
d2 = {x: y for x, y in zip(range(40), range(0,1000))}
return {**d1, **d2}

def t():
d1 = {x: y for x, y in zip(range(40), range(0,1000))}
d2 = {x: y for x, y in zip(range(40), range(0,1000))}
return d1 | d2


print(timeit.timeit(l, number=100000))
print(timeit.timeit(t, number=100000))
Начинаю серию публикаций полезного материала по изучению DA/DS. Если вам нравится такой формат пишите в комментариях.

Основы Python

Книги:
- Книга «Python для детей», Джейсон Бриггс Машинное обучение, big data, веб-аналитика и создание роботов — всё это раньше звучало как фразы из фильмов про будущее, а теперь это наше настоящее. Современные дети много времени проводят за компьютером — дайте же им шанс научиться программировать Смотреть описание
- Книга «Код. Тайный язык информатики», Чарльз Петцольд Книга, не только объясняющая как и почему работают компьютеры, но и приучающая к инженерному мышлению. Смотреть описание
- Книги по изучению Python Смотреть подборку
- Книга «Python для сложных задач. Наука о данных и машинное обучение», Вандер Плас Дж. Подробное руководство по самым разным вычислительным и статистическим методам, без которых немыслима любая интенсивная обработка данных, научные исследования и передовые разработки. Смотреть описание
- Книга «Python. Карманный справочник», Лутц Марк В лаконичной форме здесь представлены все необходимые сведения о типах данных и операторах Python, специальных методах, встроенных функциях и исключениях, наиболее употребительных стандартных библиотечных модулях и других примечательных языковых средствах Python. Смотреть описание
- Книга «Automate the Boring Stuff with Python», Al Sweigart Книга про автоматизацию различной рабочей рутины Читать книгу

Полезные материалы:
- Курс «Python для начинающих» от Code Basics Первый модуль посвящен азам построения программ на Python. Он готовит плацдарм для написания осмысленных программ. Познакомиться с курсом
- Чтобы совершать меньше ошибок и разобраться в том, как ваш код работает, научитесь его дебажить и отлаживать. В этом помогут вот эти статьи:
- Отладка Python приложений с помощью pdb
- Профилирование и отладка Python
- Отладка (юнит с Хекслета)
- Python 3 Cheat Sheet (Шпаргалка по основам Python)

Дополнительные материалы:
- Основы Python — http://pythontutor.ru Отличная платформа, которая показывает, как вообще думает Python. И огромный плюс, что тут показывают чего от вас хотят, т.е. дают вопрос, набор данных и ответ, а вам нужно написать код.
- https://pythonworld.ru/samouchitel-python — очень хороший сайт, который дает не только основы, но и хорошо разобраны многие модули (например, Pandas).
- https://github.com/whitehorn/pyLearn — Python для начинающих. В своё время, когда я учился программировать на python, я понял, что лучший способ не забыть "как именно вызывать вот ту функцию, которая делает xyz" - это сесть и написать шпаргалку. Со временем их стало много, появился ipython notebook, который теперь jupyter notebook. В итоге я оформил небольшой вводный курс по python для студентов в виде серии jupyter notebook's (от install до библиотеки эффективных численных вычислений numpy). С курсом можно ознакомиться на моей страничке в GitHub
- Книга A Byte of Python: http://wombat.org.ua/AByteOfPython/
- Занятная статья с хаками для анализа данных http://proglib.io/p/analysis-hacks/
- Материал про форматирование текста через f-строки — https://shultais.education/blog/python-f-strings
- про словари есть тут http://pythontutor.ru/lessons/dicts/
- Lambda, map and filter https://medium.com/better-programming/lambda-map-and-filter-in-python-4935f248593
- https://www.codewars.com/ - выбираете питон и решаете различные задачки на нем. Гугля различные способы, читаете чужие решения, учитесь понимать чужой код, находите новые способы.
5 важных аспектов замыканий в Python

https://nuancesprog.ru/p/13907/

@machinelearning_ru
Forwarded from Python Academy
Работаем со временем без головной боли

При работе со временем и датами у встроенных модулей есть несколько неприятных моментов:

— Их слишком много: datetime, time, calendar, dateutil, pytz и другие;
— В них слишком много типов: date, time, datetime, tzinfo, timedelta, relativedelta и т. д.

И вот на днях я наткнулся на пакет arrow, который их решает. Во-первых, там есть все необходимое. Во-вторых, все объекты имеют один и тот же тип Arrow.

Большой плюс в том, что пакет совместим с основными встроенными типами. Например, выше я преобразовал datetime в Arrow и обратно.

Еще из приятных бонусов: там есть функция humanize, которая конвертирует время в читаемый текст.

#время #arrow
Forwarded from Python Academy
Частичное применение

Сегодня поговорим об одном интересном концепте из области функционального программирования. Использовать будем функцию partial из стандартной библиотеки functools.

Предоставление функции меньшего количества аргументов, чем она ожидает, называется частичным применением функций.

Другими словами, это такая функция, которая принимает другую функцию с несколькими параметрами и возвращает функцию, но уже с меньшим количеством параметров.

#functools