Разъяснивший Python – Telegram
Разъяснивший Python
7.62K subscribers
2.84K photos
40 videos
30 files
2.73K links
Твой проводник в омут Python'а

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

Канал на бирже: https://telega.in/c/python_pssss
Download Telegram
Работа со строками: Часть 1

Работа со строками в Python — это одна из самых полезных и часто используемых частей языка, ведь строки встречаются везде: от текстовых сообщений до обработки данных. Python предлагает множество встроенных методов для работы со строками

Объединить строки в одну легко с помощью оператора + или метода join().

Для изменения регистра строки есть три метода. upper() — делает все буквы заглавными. lower() — приводит строку к нижнему регистру. capitalize() — делает первую букву заглавной, а остальные строчными.

Разъяснивший Python
Логические all и any

Встроенные функции all() и any(), которые применяются к последовательностям (спискам, кортежам и т. д.) и возвращают bool значение.

all(iterable) — возвращает True, если все элементы iterable истинны (или iterable пуст).
any(iterable) — возвращает True, если хотя бы один элемент iterable истинен.

Эти функции могут использоваться для проверки каких-либо условий на всём наборе данных.
Например, проверить, что все числа больше нуля, или что хотя бы одно число больше 10.

Важные моменты:
— Для пустых iterable all() вернёт True, а any()False.
— Элемент считается ложным, если его bool() равен False.
— Функции останавливаются при первом ложном (для all) или истинном (для any) элементе.

Разъяснивший Python
Работа со строками: Часть 2

Методы для удаления лишних символов с начала и конца строки:

strip() — удаляет пробелы в начале и в конце строки.
lstrip() и rstrip() — удаляют пробелы слева или справа.

Python поддерживает несколько способов форматирования строк:

f-строки (начиная с Python 3.6): встроенные выражения, облегчает работу с переменными.
Метод format(): добавляет параметры внутри фигурных скобок {}.

Разъяснивший Python
Объединение списков: Часть 2

Оператор распаковки * появился в Python 3.5 и позволяет объединять списки более гибко. Этот способ похож на использование оператора +, но его синтаксис более универсален, особенно при работе с несколькими списками.

Также можно воспользоваться циклом for. Этот способ вручную добавляет элементы второго списка в первый через цикл. Это полезно, когда требуется полный контроль над процессом или когда объединение требует дополнительной логики (например, фильтрации элементов). Учти, что код длиннее и может быть менее эффективным при объединении большого количества данных.

Модуль itertools предоставляет функцию chain(), которая объединяет несколько списков, возвращая итератор. Это эффективный способ работы с большими списками, так как данные обрабатываются “лениво” (по мере необходимости), а не загружаются все сразу в память.

Разъяснивший Python
👍1
Как создавать списки в Python

Чтобы создать новый список, сначала дайте ему имя. Затем добавьте оператор присваивания (=) и пару квадратных скобок. Внутри скобок добавьте значения, которые должны содержаться в списке.

Разъяснивший Python
👍1
MongoDB: sort

В MongoDB метод sort() используется для сортировки результатов запроса на основе одного или нескольких полей. Вы можете сортировать как по возрастанию, так и по убыванию, используя значения 1 для сортировки по возрастанию и -1 для сортировки по убыванию.

Разъяснивший Python
itertools.product()

В Python функция itertools.product() генерирует декартово произведение нескольких итерируемых объектов, что удобно для перебора всех комбинаций элементов.

Разъяснивший Python
__del__

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

Разъяснивший Python
contextlib.redirect_stdout

Функция contextlib.redirect_stdout в Python временно перенаправляет вывод print() и других операций записи. Полезно, когда нужно записать вывод в файл или перехватить его для дальнейшей обработки.

Разъяснивший Python
Memray — профилирование памяти для Python

Memray — это современный инструмент для профилирования памяти в Python, разработанный командой Bloomberg. Он позволяет детально отслеживать выделение и использование памяти в ваших приложениях, что помогает выявлять утечки и оптимизировать производительность.

Глубокий анализ: Memray отслеживает все выделения памяти, включая те, что происходят в нативных расширениях на C/C++.
Гибкие отчёты: Генерирует отчёты в виде текстовых файлов, графов и HTML-страниц для наглядного представления данных.
Поддержка многопоточности: Корректно работает с многопоточными приложениями, обеспечивая точный анализ.
Интеграция с Jupyter: Позволяет визуализировать данные профилирования прямо в Jupyter Notebook.

🔗 Ссылочка на доку

Разъяснивший Python
pathlib.Path.glob()

В Python метод Path.glob() из модуля pathlib используется для поиска файлов и директорий, соответствующих шаблону. Он мощнее, чем простое перечисление файлов, и поддерживает поиск с использованием подстановочных знаков.

Разъяснивший Python
Работа с файлами: Часть 2

Чтение файла:

read() — считывает весь файл как строку.
readline() — считывает одну строку.
readlines() — возвращает все строки файла в виде списка.

Запись в файл:

write() — записывает строку в файл.
writelines() — принимает список строк и записывает их в файл. При использовании режима "w" файл будет перезаписан, а "a" добавит данные в конец файла.

Разъяснивший Python
1
Атрибут __all__

Атрибут __all__ используется для контроля того, какие элементы модуля экспортируются при импорте с помощью from module import *.
Этот атрибут должен содержать список имен, которые будут экспортированы.

Если __all__ не определен, то при импорте будут экспортированы все имена, не начинающиеся с _.

Использование __all__ позволяет явно указать автору модуля, какие части модуля являются публичным API, а какие — внутренней реализацией.
Это способствует лучшей структуре кода и предотвращает неожиданный экспорт внутренних элементов модуля.

Проще говоря, __all__ — это простой механизм контроля области видимости при импорте. Он помогает организовать чистый публичный интерфейс модуля.

Разъяснивший Python
Как индексируются списки в Python

Списки поддерживают порядок элементов.

Каждый элемент имеет собственный порядковый номер — индекс, который можно использовать для доступа к самому элементу.

Индексы в Python (и любом другом современном языке программирования) начинаются с 0 и увеличиваются для каждого элемента в списке.

Разъяснивший Python
👍1
Использование requirements.txt для управления зависимостями

Файл requirements.txt позволяет вам указать все зависимости вашего проекта, что делает его проще для установки на других машинах или серверах. Это особенно полезно, если вы работаете в команде или развертываете приложение на новом сервере.

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

Разъяснивший Python
Библиотека yt-dlp

yt-dlpэто библиотека и утилита командной строки для скачивания видео с YouTube и других сайтов.

Основные возможности и применение yt-dlp:
— Поддерживает скачивание видео, аудио, плейлистов, каналов и др с YouTube. Помимо этого работает с сотнями других сайтов — Vimeo, Facebook, ВКонтакте, TikTok и др. Позволяет скачивать контент практически отовсюду.
— Извлечение метаданных и обложек видео.
— Конвертация медиафайлов в другие форматы после скачивания.
— Поддержка прокси и лимитов скорости.
— Множество настроек для извлечения данных, именования файлов, пост-обработки и т.д.
— Удобная утилита командной строки и модуль Python для автоматизации.

Разъяснивший Python
Использование файла .env для управления конфигурациями

При разработке приложений часто необходимо управлять конфигурационными параметрами, такими как параметры подключения к базе данных, API-ключи и другие секретные данные. Хранение этих данных в коде может привести к их утечке и усложнить управление конфигурациями. Использование файла .env позволяет отделить конфигурацию от кода и упрощает управление переменными окружения.

Этот лайхак будет полезен разработчикам, работающим над проектами, которые требуют настройки конфигураций и хранения конфиденциальной информации. Он помогает улучшить безопасность и упрощает управление окружением в различных средах (разработка, тестирование, продакшен).

Разъяснивший Python
😱1
Использование оператора match для структурного паттерн-матчинга в Python 3.10

Оператор match — это новая конструкция в Python 3.10, которая позволяет выполнять структурный паттерн-матчинг. Она дает возможность сопоставлять сложные структуры данных и упрощает обработку разных типов входных данных

Разъяснивший Python
1
Работа с файлами: Часть 3

Функции seek() и tell() позволяют управлять положением указателя внутри файла. seek(offset, from_what) — устанавливает указатель в файл, где from_what=0 — от начала, 1 — от текущей позиции, 2 — от конца. tell() возвращает текущую позицию указателя.

Модуль os и pathlib предоставляют функции для работы с файловой системой, например, для проверки существования файлов или создания папок.

Для хранения сложных объектов Python, таких как словари и списки, часто используют формат JSON.

Разъяснивший Python
👍1
textwrap.dedent()

В Python метод textwrap.dedent() удаляет общие отступы из многострочного текста. Это полезно для упрощения форматирования строк, особенно в документации или больших блоках текста.

Разъяснивший Python
Masonite — мощный Python-фреймворк для веб-приложений

Masonite — это современный и простой в использовании фреймворк для создания веб-приложений. Он предлагает удобный API, поддержку архитектуры MVC и встроенные инструменты для миграций и тестирования.

Поддержка инверсии управления (IoC) для гибкого управления зависимостями.
Интеграция с популярными инструментами, такими как ORM Orator.
Удобная система маршрутизации и шаблонов.

Ссылочка на доку

Разъяснивший Python