PYC PYO
変換不可

PYC から PYO への変換

PYC を PYO に変換できますか?
クイック回答
PYC を PYO に変換することは可能ですか?
いいえ - 直接の変換はできません。

.pyo 拡張子は Python 3.5 (PEP 488) で廃止されました。それ以降、最適化されたバイトコードは、ファイル名に opt-1 または opt-2 というサフィックスが付いた .pyc ファイルとして保存されます。形式自体が存在しないため、.pyo を出力するコンバーターはありません。

直接パスなし

このページの内容

macOS、Windows、Linux でテスト済み
最終検証日:Sep 2026

その他の無料コンバーター

HEIC、PNG、WEBP、MP3 など、すべてのツールが無料です。

ツールボックスを開く

なぜ PYC を PYO に変換するのですか?

.pyo は Python の最適化されたバイトコードであり、.pyc とほぼ同一でしたが、assert 文が削除され、オプションで docstring が削除されるという違いがありました。Python 3.5 では最適化レベルが .pyc のファイル名に組み込まれたため、.pyo は冗長となり完全に削除されました。3.5 以降の Python バージョンでは .pyo ファイルの読み書きを行わないため、PYC から PYO へのコンバーターには正当な目的がありません。

これらの形式について

品質と注意点

  • Python 3.5 以降で最適化されたバイトコードを生成するには、python -O -m compileall yourscript.py を実行します。結果は __pycache__ フォルダ内に opt-1 という名前が付いた .pyc ファイルとして保存されます。
  • Python 2 または初期の Python 3 プロジェクトの .pyo ファイルがある場合は、拡張子を .pyc に変更して、対応する Python バージョンで実行できます。マジックナンバーが一致すればインタープリタが読み込みます。
  • 削除される前でも pyo.pyc は機能的にほぼ同一でした。これこそが、Python 3.5 で個別の拡張子が廃止された理由です。

よくある質問

.pyo は .pyc と同じですか?
機能的にはイエスです。唯一の違いは docstring の削除と assert 文の無効化でしたが、それが理由で Python 3.5 で個別の拡張子が廃止されました。
古いプロジェクトの .pyo ファイルがあります。まだ使えますか?
対応する Python バージョンがあれば、直接実行するか .pyc にリネームして実行できます。Python 3.5 以降は .pyo ファイルを作成しませんが、実行することは可能です。
.pyc または .pyo からソースコードを復元するにはどうすればよいですか?
Python 3.8 までは decompyle3 または uncompyle6 を、Python 3.9 以降は pycdc を使用してください。結果は近似的なものであり、コメントは失われます。