Работа со строками: Часть 2
Методы для удаления лишних символов с начала и конца строки:
strip() — удаляет пробелы в начале и в конце строки.
lstrip() и rstrip() — удаляют пробелы слева или справа.
Python поддерживает несколько способов форматирования строк:
f-строки (начиная с Python 3.6): встроенные выражения, облегчает работу с переменными.
Метод format(): добавляет параметры внутри фигурных скобок {}.
#theory // Just Python
Методы для удаления лишних символов с начала и конца строки:
strip() — удаляет пробелы в начале и в конце строки.
lstrip() и rstrip() — удаляют пробелы слева или справа.
Python поддерживает несколько способов форматирования строк:
f-строки (начиная с Python 3.6): встроенные выражения, облегчает работу с переменными.
Метод format(): добавляет параметры внутри фигурных скобок {}.
#theory // Just Python
Как создавать списки в Python
Чтобы создать новый список, сначала дайте ему имя. Затем добавьте оператор присваивания (=) и пару квадратных скобок. Внутри скобок добавьте значения, которые должны содержаться в списке.
#theory // Just Python
Чтобы создать новый список, сначала дайте ему имя. Затем добавьте оператор присваивания (=) и пару квадратных скобок. Внутри скобок добавьте значения, которые должны содержаться в списке.
#theory // Just Python
MongoDB: sort
В MongoDB метод sort() используется для сортировки результатов запроса на основе одного или нескольких полей. Вы можете сортировать как по возрастанию, так и по убыванию, используя значения 1 для сортировки по возрастанию и -1 для сортировки по убыванию.
#theory // Just Python
В MongoDB метод sort() используется для сортировки результатов запроса на основе одного или нескольких полей. Вы можете сортировать как по возрастанию, так и по убыванию, используя значения 1 для сортировки по возрастанию и -1 для сортировки по убыванию.
#theory // Just Python
del
В Python метод
#theory // Just Python
В Python метод
__del__ служит деструктором, который вызывается при уничтожении объекта. Он позволяет выполнять завершающие действия, такие как освобождение ресурсов или запись логов, перед тем как объект будет удалён сборщиком мусора.#theory // Just Python
contextlib.redirect_stdout
Функция
#theory // Just Python
Функция
contextlib.redirect_stdout в Python временно перенаправляет вывод print() и других операций записи. Полезно, когда нужно записать вывод в файл или перехватить его для дальнейшей обработки.#theory // Just Python
pathlib.Path.glob()
В Python метод
#theory // Just Python
В Python метод
Path.glob() из модуля pathlib используется для поиска файлов и директорий, соответствующих шаблону. Он мощнее, чем простое перечисление файлов, и поддерживает поиск с использованием подстановочных знаков.#theory // Just Python
Работа с файлами: Часть 2
Чтение файла:
read() — считывает весь файл как строку.
readline() — считывает одну строку.
readlines() — возвращает все строки файла в виде списка.
Запись в файл:
write() — записывает строку в файл.
writelines() — принимает список строк и записывает их в файл. При использовании режима "w" файл будет перезаписан, а "a" добавит данные в конец файла.
#theory // Just Python
Чтение файла:
read() — считывает весь файл как строку.
readline() — считывает одну строку.
readlines() — возвращает все строки файла в виде списка.
Запись в файл:
write() — записывает строку в файл.
writelines() — принимает список строк и записывает их в файл. При использовании режима "w" файл будет перезаписан, а "a" добавит данные в конец файла.
#theory // Just Python
Атрибут all
Атрибут
Этот атрибут должен содержать список имен, которые будут экспортированы.
Если
Испольall
Это способствует лучшей структуре кода и предотвращает неожиданный экспорт внутренних элементов модуля.
Проще all
#theory // Just Python
Атрибут
__all__ используется для контроля того, какие элементы модуля экспортируются при импорте с помощью from module import *.Этот атрибут должен содержать список имен, которые будут экспортированы.
Если
__all__ не определен, то при импорте будут экспортированы все имена, не начинающиеся с _. Испольall
__all__ позволяет явно указать автору модуля, какие части модуля являются публичным API, а какие — внутренней реализацией. Это способствует лучшей структуре кода и предотвращает неожиданный экспорт внутренних элементов модуля.
Проще all
__all__ — это простой механизм контроля области видимости при импорте. Он помогает организовать чистый публичный интерфейс модуля.#theory // Just Python
Как индексируются списки в Python
Списки поддерживают порядок элементов.
Каждый элемент имеет собственный порядковый номер — индекс, который можно использовать для доступа к самому элементу.
Индексы в Python (и любом другом современном языке программирования) начинаются с 0 и увеличиваются для каждого элемента в списке.
#theory // Just Python
Списки поддерживают порядок элементов.
Каждый элемент имеет собственный порядковый номер — индекс, который можно использовать для доступа к самому элементу.
Индексы в Python (и любом другом современном языке программирования) начинаются с 0 и увеличиваются для каждого элемента в списке.
#theory // Just Python
Библиотека yt-dlp
Основные возможности и применение yt-dlp:
— Поддерживает скачивание видео, аудио, плейлистов, каналов и др с YouTube. Помимо этого работает с сотнями других сайтов — Vimeo, Facebook, ВКонтакте, TikTok и др. Позволяет скачивать контент практически отовсюду.
— Извлечение метаданных и обложек видео.
— Конвертация медиафайлов в другие форматы после скачивания.
— Поддержка прокси и лимитов скорости.
— Множество настроек для извлечения данных, именования файлов, пост-обработки и т.д.
— Удобная утилита командной строки и модуль Python для автоматизации.
#theory // Just Python
yt-dlp — это библиотека и утилита командной строки для скачивания видео с YouTube и других сайтов. Основные возможности и применение yt-dlp:
— Поддерживает скачивание видео, аудио, плейлистов, каналов и др с YouTube. Помимо этого работает с сотнями других сайтов — Vimeo, Facebook, ВКонтакте, TikTok и др. Позволяет скачивать контент практически отовсюду.
— Извлечение метаданных и обложек видео.
— Конвертация медиафайлов в другие форматы после скачивания.
— Поддержка прокси и лимитов скорости.
— Множество настроек для извлечения данных, именования файлов, пост-обработки и т.д.
— Удобная утилита командной строки и модуль Python для автоматизации.
#theory // Just Python
Использование оператора match для структурного паттерн-матчинга в Python 3.10
Оператор match — это новая конструкция в Python 3.10, которая позволяет выполнять структурный паттерн-матчинг. Она дает возможность сопоставлять сложные структуры данных и упрощает обработку разных типов входных данных
#theory // Just Python
Оператор match — это новая конструкция в Python 3.10, которая позволяет выполнять структурный паттерн-матчинг. Она дает возможность сопоставлять сложные структуры данных и упрощает обработку разных типов входных данных
#theory // Just Python
Работа с файлами: Часть 3
Функции seek() и tell() позволяют управлять положением указателя внутри файла. seek(offset, from_what) — устанавливает указатель в файл, где from_what=0 — от начала, 1 — от текущей позиции, 2 — от конца. tell() возвращает текущую позицию указателя.
Модуль os и pathlib предоставляют функции для работы с файловой системой, например, для проверки существования файлов или создания папок.
Для хранения сложных объектов Python, таких как словари и списки, часто используют формат JSON.
#theory // Just Python
Функции seek() и tell() позволяют управлять положением указателя внутри файла. seek(offset, from_what) — устанавливает указатель в файл, где from_what=0 — от начала, 1 — от текущей позиции, 2 — от конца. tell() возвращает текущую позицию указателя.
Модуль os и pathlib предоставляют функции для работы с файловой системой, например, для проверки существования файлов или создания папок.
Для хранения сложных объектов Python, таких как словари и списки, часто используют формат JSON.
#theory // Just Python
textwrap.dedent()
В Python метод
#theory // Just Python
В Python метод
textwrap.dedent() удаляет общие отступы из многострочного текста. Это полезно для упрощения форматирования строк, особенно в документации или больших блоках текста.#theory // Just Python
Masonite — мощный Python-фреймворк для веб-приложений
Masonite — это современный и простой в использовании фреймворк для создания веб-приложений. Он предлагает удобный API, поддержку архитектуры MVC и встроенные инструменты для миграций и тестирования.
Ссылочка на доку
#theory // Just Python
Masonite — это современный и простой в использовании фреймворк для создания веб-приложений. Он предлагает удобный API, поддержку архитектуры MVC и встроенные инструменты для миграций и тестирования.
• Поддержка инверсии управления (IoC) для гибкого управления зависимостями.• Интеграция с популярными инструментами, такими как ORM Orator.• Удобная система маршрутизации и шаблонов.Ссылочка на доку
#theory // Just Python
Сортировка списков: Часть 1
Python предлагает два основных способа сортировки списков: метод sort() и функцию sorted(). Метод sort() сортирует список на месте и не возвращает новый список. Функция sorted() возвращает новый список, не изменяя оригинал.
Иногда требуется сортировать элементы не по их значению, а по какому-то критерию. Например, сортировать строки по длине, а не по алфавиту. Для этого существует параметр key. Он принимает функцию, применяемую к каждому элементу перед сортировкой.
#theory // Just Python
Python предлагает два основных способа сортировки списков: метод sort() и функцию sorted(). Метод sort() сортирует список на месте и не возвращает новый список. Функция sorted() возвращает новый список, не изменяя оригинал.
Иногда требуется сортировать элементы не по их значению, а по какому-то критерию. Например, сортировать строки по длине, а не по алфавиту. Для этого существует параметр key. Он принимает функцию, применяемую к каждому элементу перед сортировкой.
#theory // Just Python
Метакласс
Метакласс (metaclass) в Python — это класс, который определяет поведение других классов, которые являются его экземплярами. В некотором смысле метакласс можно рассматривать как «класс для классов». Он задает правила и ограничения для создания и работы классов.
В Python метаклассы используются для контроля процесса создания классов, изменения их атрибутов и методов, а также для внесения различных модификаций в поведение классов и их экземпляров. Они предоставляют мощный инструмент для метапрограммирования, то есть программирования на уровне создания программного кода.
#theory // Just Python
Метакласс (metaclass) в Python — это класс, который определяет поведение других классов, которые являются его экземплярами. В некотором смысле метакласс можно рассматривать как «класс для классов». Он задает правила и ограничения для создания и работы классов.
В Python метаклассы используются для контроля процесса создания классов, изменения их атрибутов и методов, а также для внесения различных модификаций в поведение классов и их экземпляров. Они предоставляют мощный инструмент для метапрограммирования, то есть программирования на уровне создания программного кода.
#theory // Just Python
zip_longest()
В Python функция
#theory // Just Python
В Python функция
zip_longest() из модуля itertools позволяет объединять итерируемые объекты разной длины, заполняя отсутствующие значения с помощью заполнителя (fillvalue). Это полезно для работы с несоответствующими наборами данных.#theory // Just Python
exceptions
В Python и многих других языках программирования,
В данном примере кода, операция
#theory // Just Python
В Python и многих других языках программирования,
exceptions (исключения) — это механизм, который позволяет обрабатывать ошибки и нестандартные ситуации во время выполнения программы. Когда возникает ошибка, Python генерирует исключение. Если исключение не обрабатывается, программа может завершиться с ошибкой.В данном примере кода, операция
x = 10 / 0 вызовет исключение ZeroDivisionError, так как нельзя делить на ноль. Однако благодаря конструкции try и except, программа не завершится с ошибкой. Вместо этого будет выведено сообщение «Произошла ошибка деления на ноль!».#theory // Just Python
Peewee — лёгкий ORM для Python
Peewee — это компактная и простая в использовании ORM-библиотека для работы с базами данных.
Она поддерживает SQLite, MySQL, PostgreSQL и предоставляет удобный API для работы с моделями, упрощая взаимодействие с базами данных.
Ссылочка на доку
#theory // Just Python
Peewee — это компактная и простая в использовании ORM-библиотека для работы с базами данных.
Она поддерживает SQLite, MySQL, PostgreSQL и предоставляет удобный API для работы с моделями, упрощая взаимодействие с базами данных.
Ссылочка на доку
#theory // Just Python
Использование встроенного модуля logging для удобного логирования
Правильное логирование — это важный аспект разработки приложений, который помогает отслеживать поведение приложения и диагностировать проблемы. Модуль logging в Python предоставляет простой и гибкий способ создания логов.
Этот лайхак будет полезен для разработчиков, работающих над любыми приложениями, от небольших скриптов до крупных проектов. Правильное логирование улучшает качество кода и упрощает отладку, что особенно важно в процессе разработки и при поддержке приложений.
#theory // Just Python
Правильное логирование — это важный аспект разработки приложений, который помогает отслеживать поведение приложения и диагностировать проблемы. Модуль logging в Python предоставляет простой и гибкий способ создания логов.
Этот лайхак будет полезен для разработчиков, работающих над любыми приложениями, от небольших скриптов до крупных проектов. Правильное логирование улучшает качество кода и упрощает отладку, что особенно важно в процессе разработки и при поддержке приложений.
#theory // Just Python