Python キャッシュライブラリはありますか? 質問する

Python キャッシュライブラリはありますか? 質問する

Python のキャッシュ ライブラリを探していますが、今のところ何も見つかりません。dictキーとその有効期限を設定してキャッシュに戻すことができる、シンプルな のようなインターフェイスが必要です。次のようなものです:

cache.get(myfunction, duration=300)

キャッシュが存在する場合はキャッシュからアイテムを取得し、存在しないか期限が切れている場合は関数を呼び出して保存します。このようなことを知っている人はいますか?

ベストアンサー1

Python 3.2からはデコレータが使えるフォローfunctoolsライブラリから。最近使用されていないキャッシュなので、その中のアイテムに有効期限はありませんが、高速ハックとしては非常に便利です。

from functools import lru_cache

@lru_cache(maxsize=256)
def f(x):
  return x*x

for x in range(20):
  print f(x)
for x in range(20):
  print f(x)

おすすめ記事