Jak mogę zmylić niektóre z argumentów funkcji w odniesieniu do klucza pamięci podręcznej?Make @lru_cache ignoruje niektóre z argumentów funkcji
Na przykład, mam funkcję, która wygląda tak:
def find_object(db_handle, query):
# (omitted code)
return result
Gdybym zastosować lru_cache
dekorator ot tak, db_handle
zostaną zawarte w kluczu pamięci podręcznej. W rezultacie, jeśli spróbuję wywołać funkcję z tym samym query
, ale innym db_handle
, zostanie on ponownie wykonany, co chciałbym uniknąć. Chcę, aby lru_cache
rozważał tylko argument query
.