Pro Python • IT
4.16K subscribers
1.46K photos
148 videos
45 files
1.42K links
Pro Python — авторский канал с полезными советами, материалами и новостями по Python-программированию.

Сотрудничество (реклама): @NotPriceMedia

Канал на бирже : https://telega.in/c/PythonTechCode
Download Telegram
Проверяем, состоит ли строка только из пробельных символов

Метод isspace() в Python используется для проверки того, содержит ли строка только пробельные символы (пробелы, табуляции, новые строки и т. д.).

Если все символы строки являются пробельными, метод возвращает True, в противном случае - False.

Для проверки, является ли символ строки пробельным символом, также используется метод isspace().


Python Tech Code - подписаться
👍7💯3❤2
Объединяем элементы итерируемого объекта

Метод join() применяется для объединения элементов итерируемого объекта с использованием определенного разделителя.

Синтаксис:

разделитель.join(итерируемый_объект)

где:
разделитель - это строка, которая будет использоваться для разделения элементов итерируемого объекта при их объединении в строку.

итерируемый_объект - это итерируемый объект, элементы которого будут объединены в строку.


Python Tech Code - подписаться
🫡11👍3🔥3❤2✍2
👍10❤3🆒1
Удаляем элементы из множества (часть 2)

Метод difference_update() удаляет элементы из одного множества, которые также присутствуют в другом множестве.

Для удаления нескольких элементов из множества в Python можно также применить «разность множеств».

Если необходимо удалить все элементы из множества, то можно применить метод clear().

Для удаления одного элемента из множества можно воспользоваться методами, рассмотренными в первой части статьи.


Python Tech Code - подписаться
❤3👍2🔥2
Находим минимальный элемент

Функция min() используется для нахождения минимального значения из переданных аргументов или элементов итерируемого объекта.

Если два элемента равны, тогда min() вернет первый из них.

Синтаксис:

min(iterable, *, default, key=None)

где:
iterable, * - это итерируемый объект или переданные аргументы.

key (необязательно) - используется для определения ключа сортировки.

default (необязательно) - это значение будет возвращено, если итерабельный объект пуст.


Если нужно найти несколько наименьших элементов в большом наборе данных, то предпочтительнее использовать heapq.nsmallest для повышения производительности.

Python Tech Code - подписаться
👍4❤3🔥2
Создаем свой собственный итератор

Чтобы объект стал итерируемым, необходимо реализовать метод __iter__().
Метод __iter__() должен возвращать объект, который имеет метод __next__(), либо сам являтся итерируемым (итератором).

В этом примере при каждом вызове __next__() возвращается следующий элемент из data, пока не будет достигнут конец списка, после чего вызывается исключение StopIteration, что говорит о завершении итерации.


Таким образом, реализуя методы __iter__() и __next__(), можем сделать свой объект итерируемым и использовать его в циклах for и других местах, где требуется работа с итерируемыми объектами.

Python Tech Code - подписаться
❤7👍3🔥2👏1
Повышаем скорость работы Python

Декоратор @jit в библиотеке Numba используется для компиляции функции Python в машинный код с целью ускорения её выполнения, одновременно сохраняя гибкость работы с разнообразными типами данных благодаря динамичности компиляции.

Этот результат достигается за счёт использования JIT-компиляции (just-in-time compilation), что означает, что код компилируется только тогда, когда он действительно требуется в процессе выполнения программы, а не заранее.

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


Для установки Numba можно воспользоваться командой:
pip install numba


Python Tech Code - подписаться
👍9✍2🔥2👨‍💻1
Вычисление среднего значения

Функция mean() из модуля statistics в Python используется для вычисления среднего значения (средней арифметической) из последовательности чисел и принимает в качестве аргумента итерируемый объект.

Однако стоит отметить, что statistics.mean() не работает со строками или другими нечисловыми типами данных. Если в вашей последовательности есть строки, вам нужно предварительно провести преобразование к числовому типу.

Python Tech Code - подписаться
👍9✍3💯1
Байтовые объекты

Байтовые объекты
- это объекты, которые хранят и обрабатывают данные в виде байтов, а не в виде символов.

Байтовые объекты в Python представлены типом данных bytes и bytearray.

Основное различие между ними заключается в том, что bytes является неизменяемым типом данных, в то время как bytearray - изменяемым.

Синтаксис для байтовых литералов похож на строковые литералы, но с добавлением префикса "b", который указывает интерпретатору Python на то, что строка должна быть представлена в виде байтового объекта.

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


Python Tech Code - подписаться
👍7🔥4❤2
Что выведет этот код?
Anonymous Quiz
2%
None
11%
1
5%
4
10%
7
23%
64
19%
Ошибку
30%
Узнать ответ
👍11🫡6❤2
Вывод цветного текста в терминал

Существуют ситуации, когда при работе с терминалом необходимо выделить определенную информацию цветом.
Один из способов — использовать ANSI Escape Codes.

В этом примере text1 выводится в красном цвете, а text2 - в желтом цвете на синем фоне.

Символ \033 обозначает начало управляющего кода ANSI, [33;104m — это параметры, где 33 — желтый цвет текста, 104 — синий цвет фона, а [0m возвращает цвет текста в стандартный черный.


Важно отметить, что поддержка ANSI Escape Codes может варьироваться в зависимости от используемой операционной системы и терминала.

Python Tech Code - подписаться
👍10❤3✍2🔥1
Динамический импорт модулей

Для динамического импорта модулей в Python можно использовать функцию import_module() из стандартной библиотеки importlib.

В данном примере код динамически импортирует модуль random и использует функцию sample() из этого модуля для выбора нескольких случайных элементов из списка.

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


Python Tech Code - подписаться
🔥8👍6❤2
Фабричная функция

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

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

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


Python Tech Code - подписаться
👍6✍3🔥2
👍15🔥13🤔6🎉2🫡2😎2🏆1
Преобразование строки в байты

Метод encode() в Python преобразует строки в байтовые объекты, используя определенную кодировку (по умолчанию UTF-8).

Если в строке есть символы, недопустимые в выбранной кодировке, возникает исключение UnicodeEncodeError.
При пустой строке метод вернет пустую последовательность байтов.

Метод encode() создает новый объект байтов, представляющий исходную строку в выбранной кодировке, не изменяя исходную строку.

В данном примере print() выведет:
b'\xd0\xad\xd1\x82\xd0\xbe Python'


Python Tech Code - подписаться
👍4❤3🔥2