Вопросы по теме 'functools'

Различия между functools.partial и аналогичной лямбдой?
В Python предположим, что у меня есть функция f , которую я хочу передать с некоторыми вторичными аргументами (предположим для простоты, что это только первый аргумент, который остается переменным). В чем разница между этими двумя способами (если...
6469 просмотров
schedule 09.07.2022

Функция, оформленная с помощью functools.wraps, вызывает TypeError с именем оболочки. Почему? Как избежать?
def decorated(f): @functools.wraps(f) def wrapper(): return f() return wrapper @decorated def g(): pass functools.wraps выполняет свою работу по сохранению имени g : >>> g.__name__ 'g' Но если я...
518 просмотров

lru_cache дамп в файл и повторная загрузка обратно в память
В пакете functools в Python3 есть декоратор lru_cache() , который запоминает ваши вызовы функций. Есть ли способ выгрузить этот кеш в файл, а затем загрузить файл обратно в память позже? Я не смог найти эту функцию в документации functools....
393 просмотров

Как использовать слот PyQt и сигнал с параметром в цикле?
Я пытаюсь создать динамическую вставку кнопки удаления инструмента внутри строки редактирования, а также связать слот с инструментом удаления. Что усложняет проблему, так это то, что у слота есть параметры, то есть lineedit и метка строк, которые...
48 просмотров
schedule 18.03.2024

Ложноотрицательные результаты Python lru_cache
Я пытаюсь кэшировать функцию expand только по ее первому аргументу. Меня не волнуют значения других аргументов для кэширования. Поскольку другие аргументы являются словарями, они не кэшируются, поэтому я определил класс, содержащий эти...
815 просмотров
schedule 27.06.2022

Как уменьшить наборы значений dict, используя понимание?
У меня есть x = {'a':set([1]) , 'b':set([2]), 'c':set([3]) } Гарантируется, что в множестве есть только один элемент. Мне нужно преобразовать это в {'a': 1, 'c': 3, 'b': 2} Следующие работы: x1 = {k:x[k].pop() for k in x.keys()}...
514 просмотров

Реализация кеширования для функции актера Ray
Моя цель - выполнить приведенный ниже код примерно за 0,3 секунды вместо 0,5 секунды. Я пробовал использовать декораторы из functools.lru_cache , toolz.functoolz.memoize и kids.cache.cache на foo , но ни один из них не работал (либо сообщение...
140 просмотров
schedule 12.05.2022