Tag Archives: programming

python комбинации из элементов итерируемых объектов product itertools

Когда необходимо получить все комбинации из элементов итерируемых объектов (декартово произведения), проще всего воспользоваться инструментов itertools.product, который является эквивалентом вложенных for циклов (где крайний правый элемент смещается при каждой...

Добавление SameSite cookie атрибут для laravel 4.2

С 80 версии Chrome Stable меняет дефолтное поведение установки cookie в рамках своего и кроссдоменного контекста. Файлы cookie, в которых не указан атрибут SameSite, будут ограничены контекстом своего сайта (т.е. если бы был...

Использование inspect.getcallargs() в декораторах python

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

Простое дефолтное значение для collections.defaultdict python

В python collections есть удобный инструмент defaultdict, похожий на обычный dict, но с дефолтными значениями для несуществующих ключей: class collections.defaultdict([default_factory[, ...]]) default_factory - то значение, которое будет использовано по умолчанию (идет None из...

Перерасход памяти и использование memoryview python

При работе с массивами байтов (большими данными) в python возникает проблема перерасхода памяти при разделении, а после отправки/копировании, как делать не стоит 1) классический пример с отправкой данных через сокет [crayon-6109d4576b11e491151001/] 2) классический...

debug celery worker в PyCharm

Отладка celery worker в PyCharm вещь нужная, полезная и удобная. 1) в Edit Configuration добавляем новую конфигурацию Python 2) в поле Script path указываем путь до celery 3) в поле Parameters параметры для запуска, в моем случае сам worker и имя очереди orders_worker - имя...

Python неоднозначное время

При переводе часов на зимнее время возникают случаи неоднозначного времени: один и тот же час может встречаться дважды. Например, в Берлине переход с летнего времени на зимнее в 2020 году пройдет 25 октября 2020 года в 3 часа ночи (Oct 25 at 3:00 am), и после перехода часы снова будут...