python @functools.lru_cache で cache_clear() を使用するにはどうすればよいですか?
2023-09-22 10:42:46
質問
ドキュメント に記載されています。
また、このデコレータは
cache_clear()
関数も提供します。 関数も提供します。
の使用方法についての例やガイダンスは提供されていません。
cache_clear()
2つ質問があります。
-
どのようにすれば
cache_clear()
を別の関数から実行できますか? -
もし私が
cache_clear()
の呼び出しをキャッシュされる関数内に条件付きで入れた場合、それが実行されることはあるのでしょうか?
どのように解決するのですか?
キャッシュの他に
lru_cache
デコレータはまた、新しい関数を追加します。
cache_info
と
cache_clear
. 以下は、それらがどのように機能するかを説明するための簡単な例です。
>>> @lru_cache(5)
... def foo():
... print('Executing foo...')
...
>>> foo()
Executing foo...
>>> foo()
>>> foo.cache_info()
CacheInfo(hits=1, misses=1, maxsize=5, currsize=1)
>>> foo.cache_clear()
>>> foo()
Executing foo...
ご質問にお答えします。
<ブロッククオートキャッシュされる関数の中に条件付きでcache_clear()の呼び出しを入れた場合、それが実行されることはあるのでしょうか?
結果がすでにキャッシュされていなければ、関数は実行され、あなたの条件に基づいて、実行されるべきです。
cache_clear
. そうでなければ、最悪の場合は無効化されず、最良の場合は読めないコードになる危険性があります。
別の関数から cache_clear() を実行するにはどうすればよいですか?
単にキャッシュされた関数をインポートして
cache_clear
を呼び出すだけです。
from x import foo
def bar():
foo.cache_clear()
関連
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] Pythonで2つのリストを連結する方法は?
-
[解決済み] ファイルのコピー方法について教えてください。
-
[解決済み] Python 3で「1000000000000000 in range(1000000000000001)」はなぜ速いのですか?
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み】Pythonに三項条件演算子はありますか?
-
[解決済み】2つの辞書を1つの式でマージする(辞書の和をとる)には?)
-
[解決済み] 前月の日時オブジェクトを返す
-
[解決済み] データフレームをソートした後にインデックスを更新する
-
[解決済み] SQLAlchemy - テーブルのリストを取得する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 前月の日時オブジェクトを返す
-
[解決済み] Pythonの構文に新しいステートメントを追加することはできますか?
-
[解決済み] PythonでSVGからPNGに変換する
-
[解決済み] Djangoで2つの日付の間を選択する
-
[解決済み] Pythonの要素別タプル演算(sumなど
-
[解決済み] Pythonによる一対のクロスプロダクト [重複] (英語)
-
[解決済み] Pandasを使って、既存のExcelファイルに新しいシートを保存する方法は?
-
[解決済み] PySparkでデータフレームのカラムをString型からDouble型に変更する方法は?
-
[解決済み] djangoのQueryDictをPythonのDictに変更するには?
-
[解決済み] Pythonでリストが空かどうかをチェックする方法は?重複