Сайт веб-разработчика

О Django, Python, бизнесе и не только...

335 0

Литеральный синтаксис быстрее чем вызов конструкторов словарей и множеств

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

Варианты …

Читать далее
242 0

Системы диспетчеризации в команде Цифры(Вист)

Работая разработчиком бэкенда в крупной команде довольно трудно показать, а иногда и описать чем конкретно занимаешься.
Уже не первый год я работаю в команде Горно-рудного дивизиона компании Цифра (ВИСТ).
А …

Читать далее
265 0

Упорядоченный список событий в python

В каком виде лучше всего хранить список событий в python.
Чаще всего я видел, что хранят в виде списка словарей.
Что-нибудь типа такого:

dt = datetime(2007, 11, 26, 0, 0) …
Читать далее
405 0

Декоратор внутри класса это возможно!

Про декораторы знают все и как их делать написано много уже где.
Но вот про декораторы в рамках класса с доступом к параметрам класса надо еще поискать.
Декоратор внутри класса …

Читать далее
298 0

Генераторы и итераторы не всегда быстрее обычного for`а

Среди коллег разработчиков на python бытует мнение что генераторы и итераторы быстрее, чем перебор for`ом
Но это не всегда так. 
Вот пример:


def sum_times():
    ch = ['bad', 'good']
    data_list = …
Читать далее
313 0

Скорость конкатенации строк и списков

Без лишних слов замеряем скорость конкатенации строк:
 def concat_times():
    x = 'abc' * 10000
    y = 'def' * 10000
 
    time_start = datetime.datetime.now()
    z = x + y
    print(f'"+" Elapsed: {datetime.datetime.now() …
Читать далее
2640 0

Последние изменения в стандартной библиотеке Python

Это копия статьи с Хабра.

Мне информация показалась полезной потому сохраню у себя на память.

---

Python 3.8+

Как изменилась стандартная библиотека Python за последние годы

Когда выходит очередная версия Python, все внимание достается новым фичам языка: моржовому оператору, слиянию словарей, паттерн-матчингу. Еще много пишут об изменениях в асинхронной работе (модуль asyncio) и типизации (модуль typing) — эти модули на виду и бурно развиваются.

Остальным модулям стандартной библиотеки достается незаслуженно мало внимания. Хочу это исправить и рассказать, что интересного появилось в версиях 3.8–3.10.

Читать далее
1247 0

Поле со списком в форме для текстового поля в модели

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

Подробнее
1586 0

12 почти однострочных конструкций от канала Digitalize

Набор полезных однострочных и почти однострочных конструкций python от youtube канала Digitalize.
Хоть все они давно известны, но почему-то далеко не все их используют ;)

1. Распаковка

   x, y, z = input().strip().split()

2. map: Выполнение функции для каждого элемента последовательности

   x, y, z = map(int, (x, y, z)
   # Объединяем с предыдущим
   x, y, z = map(int, input().strip().split())


Дальше по списку
1893 0

Функция для получения количества записей в моделях приложения Django

Иногда надо получить количество записей в моделях приложения django одной командой.
Если у вас до 10 моделей то можно конечно получить эти цифры через shell или функцией с count для всех моделей,
а если моделей сотни, а если тысячи 0_о?
Или мы не знаем и знать не хотим названия моделей?
Код функции для вывода количества записей в моделях приложения

Контактные данные

 Россия, г. Москва