Уютный чат для профессионалов, занимающихся поиском питоньих мудростей. Как не получить бан: https://t.me/ru_python/1961404
а на счет этого, я правильно понимаю, что DI в фастапи не предназначен для такого использования, но судя по твоему посту в @advice17 это правильное использование
а почему оно правильное? потому что в Depends() не передается функция никакая?
unit of work - штука, которая следит за изменениями объектов чтобы в конце в базу слить
Читать полностью…а, действительно на ум приходит какой-то граф построить
Читать полностью…я вот это не совсем понял, типо элементы принадлежать какому-то заранее известному множеству?
Читать полностью…Да, типа
matches_remaining = {"foo": 3, "bar": 3, "baz": 3}Читать полностью…
for item in x:
classes = bolshoi[item] # KeyError -> no intersection
for cls in classes:
matches_remaining[cls] -= 1
if matches_remaining[cls] == 0:
yield cls
запишись куда-нибудь в качестве собеседующего и задай кандидату эту задачку
Читать полностью…Я имел в виду при определении принадлежности держать словарь типа
matches_remaining = {"foo": 3, "bar": 3, "baz": 3}
{1} является подмножеством для {1,2} и для {1,100, 1000}
Читать полностью…да, пока об этом и думал, но непонятно какую глубину делать
Читать полностью…Depends в фастапи можно юзать для двух вещей:
* предобработки запроса
* DI
во втором случае ты или ничего не передаешь в Depends или передаешь заглушку (потому что есть баги)
а что такое UoW? я почитал но все равно не очень понял
Читать полностью…Собственно да, похоже, префиксные деревья - типовое решение, я куда-то в экзотику начал думать. https://ceur-ws.org/Vol-924/paper06.pdf
Читать полностью…будет лучше везде заюзать, асинк, да. но только потому что это фастапи
Читать полностью…можно было просто передавать аргументы в __init__
... но это было слишком просто
в задаче N множеств всегда одни и те же, а вот x будет меняться и надо постоянно искать
Читать полностью…Возможно, matches_remaining
было бы быстрее сделать через мультисет или что-то такое
я так понимаю ты предлагаешьres = intersect(bolshoy[item] for item in x)
Так не по всем. Оно по сути как хэшмапа, только для спектра алгоритм надо придумывать удачно.
Это из той же области, что поиск музыкального трека по напетой мелодии. Или картинки по потенциально искажённому фрагменту.
ну да, может оказаться что один элемент принадлежит много кому, значит надо по второму
Читать полностью…