#python python... PYTHON 🔛 🚀
11 subscribers
914 photos
7 videos
158 files
1.54K links
Download Telegram
Tips & Tricks. Python *args и **kwargs

Давайте рассмотрим, что такое *args и **kwargs, и чем они полезны. Для этого разберем пару простых примеров.

Читать статью

#tipsandtricks #функции
Forwarded from Продвинутый курс по Python
​​Но решение достаточно простое: можно использовать декоратор wraps из модуля functools. Он подменяет определённые аргументы, docstring и названия так, что функция не меняется.

Оборачиваем этим декоратором ту функцию, которая возвращается в качестве уже новой. В аргументы передаём ту, которую изначально декорируем.

Подобный трюк не необходим, но крайне желателен в каждом декораторе.
Forwarded from Продвинутый курс по Python
​​Здесь мы добавили ещё один уровень функций и принимаемый аргумент.

По сути это тот же декоратор, который при вызове возвращает декоратор... Но фактически, правильнее называть этой фабрикой декораторов. Но если не заморачиваться, то просто запомните этот приём как "декоратор с параметрами".
Forwarded from Продвинутый курс по Python
​​Далее поменяем слегка условную конструкцию, так как теперь надо сравнивать с переданным access_level, а не просто с 'admin'.
Forwarded from Продвинутый курс по Python
Домашнее задание

К темам итераторов, генераторов и прочего особо нечего дать, так как это просто надо знать. А вот декораторы лучше уметь применять на практике, поэтому именно по ним и будет домашнее задание.

Задание 1. Написать декоратор timing, замеряющий время выполнения функции.

Задание 2. Продвинутое задание. Модифицировать декоратор из прошлого задания таким образом, чтобы он выполнял декорируемую функцию iters раз, а затем выводил среднее время выполнения.
Forwarded from Продвинутый курс по Python
​​Решение задания 1
Forwarded from Продвинутый курс по Python
​​Решение задания 2
Forwarded from Storm Trooper
Forwarded from alexy.firsov
не удивительно) ты же видишь это, почти 50 на 50
Forwarded from Simon Osipov
Меня вот этот факт удивил
Forwarded from Storm Trooper
This media is not supported in your browser
VIEW IN TELEGRAM
На youtube мне теперь рекомендую множество курсов - про SQL, про Python, сегодня даже про Burning Man посмотрел с детьми. Мне очень понравилась эта лекция про Python. (Если уже хотите питонить, то думаю очень полезный курс)

Лектор классно заметил, что не надо учить синтаксис языка. А именно это мы и делаем (мы это люди без ИТ образования). Нужно учить фундаментальные вещи. Точно также как и в data engineering, мы не учим инструменты, мы учим фундаментальные вещи в аналитике. Просто пример, я работаю в Alexa, со мной работает много крутых Data Scientist, Applied Researchers, Phd из топовых университетов, но при этим мои знания им полезные, и я им помогаю творить, опираясь на базовые принципы интграции данных, способов хранения и обработки данных.
Forwarded from Programmer memes
This media is not supported in your browser
VIEW IN TELEGRAM
Тебе не нужно это дерьмо
Forwarded from Moscow Python (Valentin Dombrovsky)
Карантин - лучшее время, чтобы учиться новому и команда Drylabs подготовила для этого отличную возможность!

Итак, с 6-го по 17-е апреля CTO Wemake.services и сооснователь Drylabs Никита Соболев проведёт серию из 6 вебинаров и поможет прокачаться по самым актуальным направлениям Python-разработки. Всего будет затронуто 5 тем:

1. Управление зависимостями: Никита коммитил в pipenv и poetry еще три года назад
2. Типизация: Никита поддерживает официальную типизацию для Django, коммитил в mypy и создал один из самых сложных (?) типизированных проектов в Python: returns
3 Тестирование: Никита член организации pytest на Github и создатель нескольких плагинов к нему
4. Требования: Никита уже 10 лет общается с заказчиками, собирает требования и пишет документацию на работе. Поддерживает документацию на десятках open-source библиотеках
5. Логика: Никита один из создателей набора библиотек dry-python для написания бизнес логики в Python.

Вебинары проходят в течение двух недель по понедельникам, средам и пятницам в 19 часов по московскому времени. Стоимость каждого из них - 3500 рублей. Не теряйте возможность прокачаться во время карантина, читайте программу и регистрируйтесь тут - https://drylabs.io/py-quarantine!
Продолжаем ждать Moscow Python Conf++!

За последние двадцать лет рефакторинг сильно изменился. Раньше приходилось вносить множество правок руками, а потом часами отлавливать ошибки копипасты. Сейчас нам достаточно выбрать «Refactor» в контекстном меню PyCharm и в один клик, полностью автоматически, внести изменения в код любого размера.

Но иногда волшебные тулзы не справляются. Например, если мы успешно внедрили flake8 и получили множество мелких замечаний к коду. Пока нет автоматического рефакторинга «сделать все хоошо», autopep8 с таким не справится. А вносить тысячи мелких изменений вручную — так себе идея.

🗂 Владимир Протасов (Parallels) в своем докладе расскажет интересные истории из своей богатой практики: с какими рефакторингами сталкивалась за годы его команда, когда автоматика работала, а когда не справлялась. И для тех случаев, когда автоматика не смогла, Владимир расскажет и покажет собственную автоматику: как можно быстро создавать небольшие утилиты на Python, способные разобрать кодовую базу на AST, внести изменения и сохранить их обратно как код.

Все сказанное основано на реальных событиях и личном опыте, так что если у вас давно лежат в беклоге задачи по массовым изменениям в коде — приходите обсудить!
народ, кто-нибудь в курсе, есть ли запись/статья по этому митапу?

https://events.yandex.ru/events/pytup-26-02-2020?openTalkDescription=342-743