ホームページ >バックエンド開発 >Python チュートリアル >Python で .pyc ファイルの生成を抑制するにはどうすればよいですか?

Python で .pyc ファイルの生成を抑制するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-10-20 15:32:02870ブラウズ

How to Suppress the Generation of .pyc Files in Python?

.pyc ファイルの作成のバイパス

Python コードを実行すると、コンパイルされたバイトコードを含む .pyc ファイルが生成されることがよくあります。ただし、特定のシナリオでは、これらのファイルの抑制が必要になる場合があります。この質問では、それらの作成を防ぐ方法を検討します。

解決策

Python の公式ドキュメント (「Python 2.6 の新機能 - インタープリターの変更点」) によると、.pyc または .pyo ファイルを抑制できます。 -B スイッチを使用して生成します。あるいは、インタープリターを実行する前に PYTHONDONTWRITEBYTECODE 環境変数を設定します。 Python プログラムは、sys.dont_write_bytecode 変数を通じてこの設定にアクセスすることもできます。

.pyc ファイルを生成せずに Python コードを実行するには、次のコマンドを使用します:

python -B prog.py

Python 3.2 Enhancement

Python 3.2 では、__pycache__ サブフォルダーという新しい機能が導入されました。 .pyc ファイルは、ソース フォルダーを乱雑にするのではなく、このサブフォルダーに保存されるようになりました。 (詳細については、「Python 3.2 の新機能 - PYC リポジトリ ディレクトリ」を参照してください。)

パフォーマンスに関する考慮事項

.pyc ファイルの生成はパフォーマンスの最適化であることに注意することが重要です。コンパイルされたバイトコードをキャッシュすることにより、その後のコードの実行に必要な時間が短縮されます。 .pyc ファイルの生成を (PYTHONDONTWRITEBYTECODE=1 に設定して) 無効にすると、パフォーマンスに悪影響を及ぼす可能性があります。

追加リソース

.pyc ファイルとそのパフォーマンスへの影響の詳細については、次のリソースを参照してください。

  • 「PEP 0304 -- 最適化されたコンパイル」 (Python 2): https://www.python.org/dev/peps/pep-0304/
  • "PEP 3147 -- 「最適化されたコンパイル」(Python 3): https://www.python.org/dev/peps/pep-3147/
  • 「Python のパフォーマンスの強化」(GitHub): https://github.com/ Python/cpython

以上がPython で .pyc ファイルの生成を抑制するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。