lru_cacheキャッシュにアクセスするための API が提供されておらず、将来のリリースで C で書き直される可能性があるため、を使用して必要なことを行うことはできません。本当にキャッシュを保存したい場合は、キャッシュにアクセスできる別のソリューションを使用する必要があります。
自分でキャッシュを書き込むのは簡単です。例えば:
from functools import wraps
def cached(func):
    func.cache = {}
    @wraps(func)
    def wrapper(*args):
        try:
            return func.cache[args]
        except KeyError:
            func.cache[args] = result = func(*args)
            return result   
    return wrapper
その後、デコレータとして適用できます。
>>> @cached
... def fibonacci(n):
...     if n < 2:
...             return n
...     return fibonacci(n-1) + fibonacci(n-2)
... 
>>> fibonacci(100)
354224848179261915075L
そして、以下を取得しますcache。
>>> fibonacci.cache
{(32,): 2178309, (23,): 28657, ... }
次に、キャッシュを好きなようにピクル/ピクル解除して、次のようにロードできます。
fibonacci.cache = pickle.load(cache_file_object)
にダンプ/ロードを追加するという機能リクエストが Python の問題トラッカーで見つかりましたlru_cacheが、受け入れられず、実装もされませんでした。将来的には、これらの操作を を介して組み込みでサポートできるようになるかもしれませんlru_cache。