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

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

Канал на бирже : https://telega.in/c/PythonTechCode
Download Telegram
🎉10🤔5😁4👍2
Определяем откуда запущен код

Метод isatty() в Python позволяет определить, связан ли текущий поток ввода/вывода с терминалом (консолью) или с другим устройством, таким как файл или канал.

Если метод возвращает True, это означает, что поток связан с терминалом, а если возвращает False, это означает, что поток связан с другим устройством.


Используя isatty(), можно узнать, в каком контексте запущен скрипт Python, и в зависимости от этого выполнить определенные действия или установить определенные параметры.

Этот метод полезен для определения типа потока ввода/вывода и адаптации работы программы или скрипта в зависимости от этого типа.

Python Tech Code - подписаться
👍7🔥2🫡1
Эффективный доступ к данным с помощью хеш-функции

Хеш-функция hash() в Python играет ключевую роль в создании хеш-таблиц и обеспечивает эффективный доступ к данным по ключу.

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

В Python хеш-таблицы реализованы в виде словарей (dict), что обеспечивает быстрый доступ к данным по ключу благодаря внутренней хеш-таблице.

Синтаксис:

hash(object)

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


Использование хеш-функций в Python улучшает обработку данных, делает ее более эффективной и удобной, особенно при работе с большим объемом информации.

Python Tech Code - подписаться
⚡13👍7🔥2
Формирование групп на основе ключевых значений

Функция groupby() в Python из модуля itertools позволяет группировать элементы последовательности на основе заданного ключа или функции.

Функция groupby() возвращает итератор, который генерирует пары (key, group_iterator), где:

key - ключ группировки, результат применения функции key к элементу;

group_iterator - итератор, содержащий все элементы из iterable, которые соответствуют данному ключу.


Необходимо помнить, что перед использованием groupby(), последовательность должна быть отсортирована по ключу, чтобы корректно сгруппировать элементы.

Python Tech Code - подписаться
🔥6👍3⚡1
Что выведет этот код?
Anonymous Quiz
38%
5
30%
5.0
11%
25.0
10%
Ошибку
11%
Узнать ответ
🔥6🤔6👏2
Перевод числа в шестнадцатеричный формат записи

Функция hex() используется для преобразования целых чисел из различных систем счисления в шестнадцатеричную форму.

Некоторые варианты применения:

отладка (для вывода шестнадцатеричного представления чисел при отладке программ);

конвертация (преобразование числа из разных систем счисления в шестнадцатеричные значения для дальнейшего анализа);

визуализация данных (иногда шестнадцатеричное представление удобно использовать при визуализации данных).


Функция hex() возвращает строку, а префикс 0x указывает на то, что строка представляет шестнадцатеричное число.

Python Tech Code - подписаться
👍5🔥3❤1
Определение регистра символов

Метод isupper() возвращает True, если все символы в строке находятся в верхнем регистре.
Если строка содержит символы в нижнем регистре, цифры или пробелы, метод вернет False.

Метод islower() возвращает True, если все символы в строке находятся в нижнем регистре, иначе - False.

Для пустой строки islower() и isupper() будут возвращать False.


Использование данных методов облегчает определение регистра символов в строке. Это удобно при проверке формата текста или при сравнении строк без учета регистра.

Python Tech Code - подписаться
💯10❤5👍4🔥2
Поиск элементов последовательности

Функция itemgetter() из модуля operator предназначена для извлечения определенных элементов из последовательности.

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

Функция возвращает объект, который выбирает элемент из переданного операнда, используя метод __getitem__() операнда.

Если указано несколько элементов, то возвращается кортеж значений.

Важно отметить, что itemgetter работает не только с индексами, но и с ключами словарей.

Python Tech Code - подписаться
❤6🔥4👍2🥰2
👍16🎉4🔥3🤔2❤1🏆1
Вычисление объема памяти объекта

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

Обратите внимание, что размер может отличаться в зависимости от специфики вашей операционной системы и интерпретатора Python.


Она возвращает объём памяти, используемый объектом.

Таким образом, вы можете эффективнее управлять ресурсами и оптимизировать использование памяти.

Python Tech Code - подписаться
🏆18🔥4👍1
Пишем свою coerce-функцию 3.х

coerce() - это функция, которая использовалась в Python 2.x для автоматического приведения двух значений к общему типу данных, если они имели разные типы.

Однако, начиная с Python 3, функция coerce() была удалена, так как это приводило к неоднозначным и непредсказуемым результатам.

Python Tech Code - подписаться
🔥6❤3🤔3👍1👨‍💻1
Генерация HTML-цветов

В веб-разработке для указания цветов в формате RGB часто используется шестнадцатеричное представление чисел.

В данном коде каждый цветовой канал (red, green, blue) преобразуется в двузначное шестнадцатеричное число с помощью форматирования f-строки {variable:02x}, где:

variable - переменная, содержащая значение цветового канала;

x - указывает, что число будет представлено в шестнадцатеричной системе счисления;

02 - означает, что число будет представлено минимум двумя символами, с добавлением нуля спереди, если значение меньше 16.


Для представления числа в шестнадцатеричном формате можно заменить форматирование f-строкой
{red:02x}

на использование функции hex()
{hex(red)[2:]:02}


Python Tech Code - подписаться
👍8🔥5🫡1
👍16❤4🤔3🔥1
Слоты в Python

В Python, __slots__ – это специальный атрибут класса, который позволяет явно указать, какие атрибуты могут быть у экземпляров класса.

В этом примере у класса "Point" есть только два атрибута: 'x' и 'y'.
Если вы попытаетесь добавить новый атрибут после создания объекта этого класса, вы получите ошибку.


Использование slots помогает экономить память за счёт того, что отключается автоматическое создание словаря dict для хранения атрибутов экземпляра класса.

Python Tech Code - подписаться
🔥19❤1👍1
Динамическое выполнение выражений

Функция eval() в Python используется для вычисления выражений, представленных в виде строки.

Она может вычислять не только математические выражения, но и любые другие выражения, которые могут быть вычислены в Python.

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


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

Оператор eval() может быть полезен в определенных ситуациях, например, при создании интерактивных приложений или при написании настраиваемых скриптов.

Python Tech Code - подписаться
❤5🔥4👍2🫡1
Динамическое выполнение кода

Функция exec() - это встроенная функция, которая позволяет выполнять динамически созданный Python код.

Она принимает строку с кодом в качестве аргумента и выполняет этот код.

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

Python Tech Code - подписаться
⚡25👍3🎉1🫡1
👍10👨‍💻5🫡3🤔1