Разъяснивший Python
8.17K subscribers
2.43K photos
40 videos
30 files
2.28K links
Твой проводник в омут Python'а

Ссылка: @Portal_v_IT

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

Канал на бирже: https://telega.in/c/python_pssss
Download Telegram
Оператор обратной импликации.

В Python есть недокументированный оператор обратной импликации.

Если вы замените False и True на 0 и 1 и выполните математические вычисления, таблица истинности эквивалентна оператору обратной импликации.

Разъяснивший Python
Оператор @

Поскольку мы говорим об операторах, есть также @ оператор для умножения матриц (не волнуйтесь, на этот раз все по-настоящему).

Оператор @ был добавлен в Python 3.5 с учетом интересов научного сообщества. Любой объект может перегрузить matmul магический метод, чтобы определить поведение для этого оператора.

Разъяснивший Python
Сколько может хранить переменных функция?

Python использует 2 байта для хранения локальных переменных в функциях. Теоретически это означает, что в функции может быть определено только 65536 переменных. Однако в python встроено удобное решение, которое можно использовать для хранения более 2 ^ 16 имен переменных. Следующий код демонстрирует, что происходит в стеке, когда определено более 65536 локальных переменных (Внимание: этот код печатает около 2 ^ 18 строк текста, так что будьте готовы!)

Разъяснивший Python
🤯1
Разбей и властвуй: как создать кастомный токенизатор в SpaCy

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

Читать...

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

Иногда print метод может выводить значения не сразу.

Это выведет wtfpython через 3 секунды из-за end аргумента, потому что выходной буфер очищается либо после обнаружения, \n либо когда программа завершает выполнение. Мы можем принудительно очистить буфер, передав flush=True аргумент.

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

'abc'.count('') == 4. Вот приблизительная реализация count метода, которая сделала бы вещи более понятными.

Такое поведение обусловлено сопоставлением пустой подстроки ('') с фрагментами длины 0 в исходной строке.

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

Попробуем использовать генераторные выражения (для получения среза будем использовать функцию islice из itertools, которая возвращает итератор по срезу)

Разъяснивший Python
Увеличиваем размер выборки и прокрашиваем серые метрики: неочевидная ошибка при проведении А/B — тестов

В этой статье я постараюсь простым языком рассказать о последствиях, к которым может привести слепой запуск A/B-тестов без предварительного А/А-тестирования.

Читать...

Разъяснивший Python
Как объединить 5 языков программирования в одном Python проекте?

Цель статьи: попробовать написать одно приложение, где будет использоваться код, написанный на 5 разных языках программирования. Благо на сегодняшний день уже реализовано много библиотек, которые позволяют без лишних проблем это сделать.

Читать...

Разъяснивший Python
Оператор walrus (:=)

В этом примере мы используем оператор walrus (:=) для одновременного присваивания значения переменной line и проверки условия внутри цикла while. Это позволяет нам сократить код, объединив операции присваивания и проверки в одну строку.

Разъяснивший Python
👍31🔥1
Функция partial

В этом примере мы используем функцию partial для создания новых функций double и triple на основе функции multiply, фиксируя аргумент y на значениях 2 и 3 соответственно. Теперь новые функции могут быть вызваны с одним аргументом, в то время как фиксированный аргумент уже задан.

Разъяснивший Python
👎1
Модуль asyncio

В этом примере мы используем модуль asyncio для создания асинхронной программы. Определяем асинхронную корутину my_coroutine, которая выполняет асинхронную операцию (в данном случае, ожидание 1 секунды). Затем определяем асинхронную функцию main, которая вызывает две корутины одновременно с помощью asyncio.gather. В конце мы используем asyncio.run для запуска основной функции main.

Разъяснивший Python
Декоратор @property

В этом примере мы определяем класс Circle с атрибутом radius и методом area, который вычисляет площадь окружности. Мы добавляем декоратор @property перед методом area, чтобы можно было обращаться к нему как к свойству объекта circle, без явного вызова метода.

Разъяснивший Python
Сортировка HTML-элементов по названию

С помощью метода find_all мы можем сортировать все элементы, которые соответствуют некоторым критериям.

Разъяснивший Python
Сортировка HTML-элементов по CSS-селектору

С помощью методов select и select_one мы можем использовать некоторые селекторы CSS для сортировки элементов.

Разъяснивший Python
Создания декораторов с помощью декоратора @wraps

В этом примере мы используем модуль functools и декоратор @wraps, чтобы создать декоратор my_decorator. Декоратор @wraps применяется к внутренней функции wrapper и копирует метаданные (имя функции, документацию и др.) из декорируемой функции func. Это полезно, чтобы сохранить исходные атрибуты функции и предотвратить их затирание. В примере мы декорируем функцию my_function с помощью @my_decorator и выполняем ее.

Разъяснивший Python
Модуль concurrent.futures для параллельного выполнения задач

В этом примере мы используем модуль concurrent.futures для параллельного выполнения функции square над элементами списка numbers. Мы создаем пул потоков с помощью ThreadPoolExecutor и используем метод map для передачи каждого элемента из списка в функцию square. Результаты возвращаются в том порядке, в котором задачи были отправлены. Аналогично, мы можем использовать пул процессов с помощью ProcessPoolExecutor для выполнения задач в отдельных процессах.

Разъяснивший Python
ТОП-10 книг по Python для начинающих программистов в 2024 году

Хотите освоить программирование на Python, но не знаете с чего начать? Мы подготовили для вас подборку из 10 лучших книг, которые помогут быстро и эффективно изучить этот популярный язык.

Читать...

Разъяснивший Python
Метод del

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

Разъяснивший Python
Enum перечисления

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

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