#python python... PYTHON 🔛 🚀
11 subscribers
914 photos
7 videos
158 files
1.54K links
Download Telegram
Forwarded from Python Skills 🐍
[Python] С помощью Python нужно записать данные в файл, но только в том случае, если файла ещё нет. Какой режим указать в инструкции open()?
Anonymous Poll
15%
'x'
31%
Никакой. Нужна предварительная проверка os.path.exists()
49%
'w'
5%
'r'
Forwarded from Python Skills 🐍
Находим файлы по шаблону

Основной фишкой модуля glob является удобная и лаконичная работа с поиском файлов по паттернам. Более того, можно даже пройтись по директориям рекурсивно.

В одноименный метод glob передаётся шаблон для поиска файлов, а возвращается список с результатами. Все методы следуют механизму и правилам сопоставления паттернов в стиле Unix.

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

#glob
Forwarded from Python Skills 🐍
Работа с датами

Модуль python-dateutil предоставляет мощное расширение для стандартного datetime. Устанавливается он следующим образом:

pip3 install python-dateutil

#Python
Forwarded from Python Skills 🐍
validate_email — это простой модуль для валидации email-адресов.

Модуль предоставляет одну основную одноименную функцию, предназначенную для валидации адреса, с помощью уже написанных регулярных выражений. Также в функции реализована проверка mx-записи у сервера и существования переданного адреса, за это отвечают необязательные параметры-флаги функции verify и check_mx.

Функция validate_email проверяет не на существование email-адреса, а возможность на его существования. На фото выше приведён пример.

Модуль отлично подойдёт для различных форм регистрации/входа и в различных других проектах.

Стоит отметить, что при обращении validate_email к DNS записям необходимо предварительно установить модуль py3dns.

Ставится командой pip install validate_email
Простенькая документация и примеры кода здесь.
Forwarded from Python Skills 🐍
Именованные кортежи

Кортежи tuple, по своей сути, являются неизменяемыми списками. Структура данных удобная, но мы можем получать данные, используя только числовые индексы.

Нет возможности дать имена отдельным элементам, сохранённым в кортеже. Это может повлиять на читаемость кода. И в таком случае используют именованные кортежи namedtuple из collections.

Каждый объект в именованном кортеже может быть доступен через уникальный, удобный для чтения человеком, идентификатор. При этом вся функциональность от обычных кортежей сохраняется.

#namedtuple
Forwarded from Programmer & IT Memes
Совет для всех: учите Python

Средняя зарплата Python-кодера 150 000 рублей, а выучить его можно всего за 1-2 месяца. Главное, чтобы объяснили доступно.

Этим и занимается разработчик Google с @PythonAA. Он укомплектовал инфу в простые уроки, чтобы любой научился кодить и получил работу через месяц.

Никаких занудных учебников и бесполезных туториалов.

Теперь научиться программировать можно ПРЯМО в Телеграме. Без смс и регистрации. Дерзайте: @PythonAA
Forwarded from # pip install (Student B.)
Полное руководство по декораторам в Python
🎯 Telegram Чат: @python_scripts
🎯 Канал: @pip_install

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

1. Регистрация функции
https://python-scripts.com/decorators-one

2. Изменение поведения функции
https://python-scripts.com/decorators-function-behavior

3. Декораторы с аргументами
https://python-scripts.com/decorators-with-arguments
Forwarded from # pip install (Student B.)
🔥 Переменное количество аргументов Функции в Python

Наш чат: @python_scripts

Мы можем использовать специальный синтаксис *args и **kwargs внутри функции для передачи переменного количества аргументов.

Использование *args и **kwargs по сути обеспечивает читабельность и удобство, но их следует использовать с осторожностью.

Подробнее: https://python-scripts.com/def-args-kwargs
Forwarded from HABR FEED + OPENNET
[Перевод] Лямбда-функция в Python простыми словами
https://habr.com/ru/post/674234/?utm_source=habrahabr&utm_medium=rss&utm_campaign=674234
Tags: Блог компании Издательский дом «Питер», Python, Программирование, ООП, Функциональное программирование, python, лямбда-выражения, списки, математические операции
Author ph_piter #habr
Forwarded from Big Data Science [RU]
🪢Пара библиотек для модульного тестирования Python-скриптов
Модульное тестирование позволяет разработчику убедиться, что код работает должным образом на атомарном уровне. Суть модульного тестирования сводится к проверке того, что каждая отдельная функция делает то, что она должна делать. Для этого можно использовать следующие инструменты:
• Pytest — это платформа для написания небольших читаемых тестов, которую можно масштабировать для поддержки сложного функционального тестирования приложений и библиотек. Требуется: Python 3.7+ или PyPy3. https://docs.pytest.org/en/7.1.x/
• Сhispa предоставляет быстрые вспомогательные методы тестирования PySpark, которые выводят описательные сообщения об ошибках. Эта библиотека упрощает написание высококачественного кода PySpark. Интересно, что chispa в переводе с испанского означает искра, т.е. Spark по-английски. https://github.com/MrPowers/chispa
Forwarded from Хабр
«Недавно Google изменил политику по отношению к доступу к аккаунту из неизвестных источников. Давно приходили предупреждения, но я до последнего надеялся, что обойдётся и не коснётся меня. Наивный»

Полковнику никто не пишет: отправка писем по SMTP после изменения политики Google с примером на Python
Forwarded from Хабр
​​«Всем привет! Сегодня хочу поделиться с вами хорошими новостями, которые связаны с производительностью Python в грядущем релизе 3.11 и тем, что нас ожидает в будущем!»

Ускорение производительности Python в 3.11
Forwarded from Хабр
​​Как изменилась стандартная библиотека Python за последние годы

Когда выходит очередная версия Python, много пишут о моржовом операторе, слиянии словарей, паттерн-матчинге, изменениях в асинхронной работе и типизации. Остальным модулям достаётся незаслуженно мало внимания. Давайте это исправим и посмотрим, что интересного появилось в версиях 3.8-3.10.
Forwarded from Хабр
​​«Асинхронное программирование традиционно относят к темам для продвинутых. <…> Но будь я автором самого толстого в мире учебника по Python, я бы рассказывал читателям про асинхронное программирование уже с первых страниц»

Асинхронный Python без головной боли
Forwarded from Хабр
​​Добавляйте единицы измерения в имена

Есть одна ловушка читаемости кода, которой легко избежать, если вы о ней знаете; тем не менее она встречается постоянно: это отсутствующие единицы измерения. Рассмотрим три фрагмента кода на Python, Java и Haskell.
Forwarded from Хабр
​​Кто за всех решил, что Python удобен для «гражданской» аналитики?

Элементарные технологические тесты и оценка экономической эффективности частенько дают неопровержимые доказательства, что DS питон является безответным поглотителем доли ИТ-бюджета компаний. Взглянем более пристально на отдельные моменты.
Forwarded from Хабр
​​«В процессе написания очередной программы задумался над тем, какой способ создания списков в Python работает быстрее. Большинство моих знакомых используют квадратные скобки. А некоторые совсем забыли о существовании функции list(). Предлагаю вашему вниманию небольшое исследование. Узнаем, правы ли коллеги»

Кто быстрее создаёт списки в Python
Forwarded from Хабр
​​«Это история о том, как я писал код на Python 3, который собирает и систематизирует данные по избирательным комиссиям в моём родном городе Санкт-Петербурге. Ну, и про то, что я там накопал в извлечённых данных»

Начинающий программист vs. Избирком СПб