fsdata
モジュールレベルで呼び出される辞書があります(グローバル変数のように)。
コンテンツはファイル システムから読み取られます。最初のアクセスで一度データをロードする必要があります。これまでは、モジュールのインポート中にデータをロードしていました。これは最適化する必要があります。
コードがアクセスしない場合fsdata
、コンテンツはファイル システムから読み取られません (CPU/IO を節約します)。
ブール値も確認すると、読み込みが発生するはずです。
if mymodule.fsdata:
... do_something()
更新: 一部のコードは既に mymodule.fsdata を使用しています。他の場所は変えたくない。関数ではなく、変数にする必要があります。また、「mymodule」は、すでに多くのコードで使用されているため、モジュールである必要があります。