Функция abspath()
Функция
Функция
Если путь является относительным, то функция
Если путь является абсолютным, то функция
#theory // Just Python
Функция
abspath()
возвращает абсолютный путь к указанному пути. Абсолютный путь — это путь, который начинается с корневого каталога файловой системы.Функция
abspath()
принимает в качестве аргумента путь к файлу или каталогу. Путь может быть относительным или абсолютным.Если путь является относительным, то функция
abspath()
преобразует его в абсолютный, относительно текущего рабочего каталога.Если путь является абсолютным, то функция
abspath()
возвращает его без изменений.#theory // Just Python
pathlib.PureWindowsPath()
В модуле
Аргумент
#theory // Just Python
В модуле
pathlib
функция pathlib.PureWindowsPath()
используется для создания объекта пути Windows. Этот объект представляет собой путь в файловой системе Windows, но не выполняет никаких операций ввода-вывода.Аргумент
path
может быть строкой, представляющей путь Windows, или другим объектом пути, который можно привести к типу PureWindowsPath
.#theory // Just Python
struct.Struct()
Модуль
Синтаксис:
Аргументы:
#theory // Just Python
Модуль
struct
позволяет преобразовывать между Python-значениями и C-структурами, представленными как объекты bytes
. Компактные форматные строки описывают предполагаемые преобразования в/из Python-значений.Синтаксис:
struct.Struct(format_string)
Аргументы:
format_string
— строка формата, описывающая структуру.#theory // Just Python
Snowballstemmer
Библиотека
Эта библиотека реализует алгоритм Портера, который является одним из наиболее известных алгоритмов стемминга.
*Стемминг применяется в поисковых системах для расширения поискового запроса пользователя, является частью процесса нормализации текста.
#theory // Just Python
Библиотека
Snowballstemmer
предоставляет функциональность стемминга, то есть преобразования слов в их базовую форму. Эта библиотека реализует алгоритм Портера, который является одним из наиболее известных алгоритмов стемминга.
Snowballstemmer
поддерживает алгоритмы стемминга для 15 языков, включая русский.*Стемминг применяется в поисковых системах для расширения поискового запроса пользователя, является частью процесса нормализации текста.
#theory // Just Python
IceCream
В этом примере кода вывод
#theory // Just Python
IceCream
— это библиотека, которая предоставляет простой и эффективный способ отладки кода. Вместо того чтобы использовать функцию print()
для отладки, вы можете использовать функцию ic()
из библиотеки IceCream
, которая позволяет вам инспектировать переменные, выражения и выполнение программы с помощью одного простого вызова функции.В этом примере кода вывод
ic|
указывает на то, что это вывод от IceCream
, а result: 6
— имя переменной и ее значение.IceCream
может быть использован в любом месте, где требуется отладка кода: веб-разработка, научные вычисления, анализ данных и т.д.#theory // Just Python
Telethon
Telethon — это библиотека Python, которая позволяет вам взаимодействовать с API Telegram. Вы можете отправлять, получать или ждать новых сообщений Telegram внутри вашего Python-приложения. Вы также можете отправлять файлы контакту или группе контактов.
В этом примере мы настраиваем автоматическое отправление файлов в группу.
*Для работы этого кода вам нужно только получить ID и хэш Telegram API (что можно сделать за несколько минут).
#theory // Just Python
Telethon — это библиотека Python, которая позволяет вам взаимодействовать с API Telegram. Вы можете отправлять, получать или ждать новых сообщений Telegram внутри вашего Python-приложения. Вы также можете отправлять файлы контакту или группе контактов.
В этом примере мы настраиваем автоматическое отправление файлов в группу.
*Для работы этого кода вам нужно только получить ID и хэш Telegram API (что можно сделать за несколько минут).
#theory // Just Python
typing.Literal
Например,
#theory // Just Python
typing.Literal
— это тип данных, который позволяет указать не просто какой-то тип вроде str
, int
или float
, а конкретное значение этого типа.Например,
Literal[42]
означает, что в качестве значения ожидается только 42. Важно, что проверяется не только равенство значения, но и его тип (например, нельзя будет использовать False
, если ожидается 0).#theory // Just Python
Принцип открытости/закрытости (OCP)
Принцип открытости/закрытости (OCP) — один из основополагающих принципов объектно-ориентированного программирования (ООП), сформулированный Бертраном Мейером. Он гласит: Программные сущности (классы, модули, функции и т. п.) должны быть открыты для расширения, но закрыты для изменения.
Иными словами код должен быть легко расширяемым для добавления новых функций или поведения. Существующий код не должен меняться при добавлении новых функций.
#theory // Just Python
Принцип открытости/закрытости (OCP) — один из основополагающих принципов объектно-ориентированного программирования (ООП), сформулированный Бертраном Мейером. Он гласит: Программные сущности (классы, модули, функции и т. п.) должны быть открыты для расширения, но закрыты для изменения.
Иными словами код должен быть легко расширяемым для добавления новых функций или поведения. Существующий код не должен меняться при добавлении новых функций.
#theory // Just Python
Функция heapq.heapify()
Функция
#theory // Just Python
Функция
heapq.heapify()
используется для преобразования списка в кучу (heap). Куча — это особая структура данных, представляющая собой полное бинарное дерево, в котором каждый родительский элемент меньше или равен своим дочерним элементам.#theory // Just Python
Функция math.gcd()
Функция
Синтаксис:
Аргументы:
Возвращаемое значение:
целое число, являющееся НОД
#theory // Just Python
Функция
math.gcd()
используется для вычисления наибольшего общего делителя (НОД) двух целых чисел. НОД — это наибольшее число, которое является делителем обоих чисел.Синтаксис:
math.gcd(a, b)
Аргументы:
a
: первое целое числоb
: второе целое числоВозвращаемое значение:
целое число, являющееся НОД
a
и b
#theory // Just Python
Функция islice()
islice() — это функция из модуля itertools, которая используется для создания итератора, возвращающего выбранные элементы из итерируемого объекта. Она похожа на срезы списков, но имеет некоторые отличия.
#theory // Just Python
islice() — это функция из модуля itertools, которая используется для создания итератора, возвращающего выбранные элементы из итерируемого объекта. Она похожа на срезы списков, но имеет некоторые отличия.
#theory // Just Python
Принцип разделения интерфейса (ISP)
ISP (Interface Segregation Principle) — один из принципов SOLID, который гласит: «Клиенты не должны зависеть от интерфейсов, которые они не используют».
Другими словами, вместо создания общих интерфейсов следует создавать специфические интерфейсы, предназначенные для конкретных клиентов. Интерфейсы должны быть максимально сплоченными, то есть все методы интерфейса должны быть тесно связаны между собой и решать одну задачу.
#theory // Just Python
ISP (Interface Segregation Principle) — один из принципов SOLID, который гласит: «Клиенты не должны зависеть от интерфейсов, которые они не используют».
Другими словами, вместо создания общих интерфейсов следует создавать специфические интерфейсы, предназначенные для конкретных клиентов. Интерфейсы должны быть максимально сплоченными, то есть все методы интерфейса должны быть тесно связаны между собой и решать одну задачу.
#theory // Just Python
bytes.hex()
Как работает:
Например, байт со значением 10 (в десятичной системе) будет представлен как "
#theory // Just Python
bytes.hex()
— это метод, который преобразует объект bytes
в шестнадцатеричную строку.Как работает:
bytes.hex()
возвращает строку, состоящую из шестнадцатеричных цифр, представляющих каждый байт в объекте bytes
. Шестнадцатеричные цифры идут парами, где первая цифра представляет старший полубайт, а вторая - младший полубайт.Например, байт со значением 10 (в десятичной системе) будет представлен как "
0a
" в шестнадцатеричной системе.#theory // Just Python
strptime()
Синтаксис:
Аргументы:
#theory // Just Python
strptime()
— это метод класса datetime
, который используется для преобразования строки, представляющей дату и время, в объект datetime
.Синтаксис:
datetime.strptime(date_string, format_string)
Аргументы:
date_string
: Строка, представляющая дату и время.format_string
: Строка, представляющая формат даты и времени.#theory // Just Python
Функция uniform()
Функция
Синтаксис:
Аргументы:
Возвращаемое значение:
Случайное число с плавающей запятой, равномерно распределенное в диапазоне [a, b].
#theory // Just Python
Функция
uniform()
из модуля random в Python используется для генерации случайных чисел с плавающей запятой в заданном диапазоне.Синтаксис:
random.uniform(a, b)
Аргументы:
a
: (обязательный) Нижняя граница диапазона.b
: (обязательный) Верхняя граница диапазона.Возвращаемое значение:
Случайное число с плавающей запятой, равномерно распределенное в диапазоне [a, b].
#theory // Just Python
Функция permutations()
Функция
Синтаксис:
Аргументы:
#theory // Just Python
Функция
permutations()
из модуля itertools
в Python используется для генерации всех возможных перестановок элементов из итерируемого объекта.Синтаксис:
itertools.permutations(iterable, r=None)
Аргументы:
iterable
: Итерируемый объект, например, список, строка или кортеж.r
(опционально): Целое число, указывающее длину перестановок. Если не указано, то по умолчанию генерируются все перестановки возможной длины.#theory // Just Python
Функция groupby()
Функция
Синтаксис:
Аргументы:
#theory // Just Python
Функция
groupby()
из модуля itertools
в Python используется для группировки элементов итератора по значению ключа. Она применяется к итератору (списку, кортежу, строке) и возвращает объект groupby
, который представляет собой итератор по группам.Синтаксис:
groupby(iterable, key=None)
Аргументы:
iterable
: Итерируемый объект, который нужно сгруппировать.key
: Функция, которая извлекает ключ из каждого элемента итератора. По умолчанию используется функция lambda
x: x
, которая возвращает сам элемент.#theory // Just Python
Функция attrgetter()
Функция
#theory // Just Python
Функция
attrgetter()
из модуля operator используется для получения значения атрибута объекта. Она позволяет избежать явного указания имени атрибута, что может сделать код более читаемым и удобным.#theory // Just Python
Декоратор lru_cache()
Декоратор
Как работает lru_cache():
Декоратор
#theory // Just Python
Декоратор
lru_cache()
из модуля functools
в Python используется для мемоизации функций, то есть для кэширования результатов их вычислений. Это может значительно повысить производительность кода, если функция выполняет вычисления, которые требуют много времени.Как работает lru_cache():
Декоратор
lru_cache()
работает по алгоритму LRU (Least Recently Used), что означает, что он кэширует последние maxsize
результатов вычислений функции. Если кэш переполняется, то наименее#theory // Just Python
Функция bisect.insort()
Функция
#theory // Just Python
Функция
bisect.insort()
в Python используется для вставки элемента в уже отсортированный список, сохраняя его отсортированным. Она работает с помощью алгоритма бинарного поиска, что делает ее более эффективной, чем линейный поиск,#theory // Just Python