30.8 py_compile -- Pythonソースファイルのコンパイル

py_compileモジュールには、ソースファイルからバイトコードファイ ルを作る関数と、モジュールのソースファイルがスクリプトとして呼び出される 時に使用される関数が定義されています。

頻繁に必要となるわけではありませんが、共有ライブラリとしてモジュールをイ ンストールする場合や、特にソースコードのあるディレクトリにバイトコードの キャッシュファイルを書き込む権限がないユーザがいるときには、この関数は役 に立ちます。

exception PyCompileError
ファイルをコンパイル中にエラーが発生すると、PyCompileError例外が送出されます。

compile( file[, cfile[, dfile[, doraise]]])
ソースファイルをバイトコードにコンパイルして、バイトコードのキャッシュ ファイルに書き出します。 ソースコードはファイル名fileで渡します。 バイトコードはファイルcfileに書き込まれ、デフォルトではfile + 'c'(使用しているインタープリタで最適化が可能なら 'o')です。 もしdfileが指定されたら、fileの代わりにソースファイルの名前 としてエラーメッセージの中で使われます。 doraise が Trueの場合、コンパイル中にエラーが発生すると PyCompileError を送出します。doraise がFalseの場合(デフォルト)はエラーメッセージは sys.stderrに出力し、例外は送出しません。

main( [args])
いくつか複数のソースファイルをコンパイルします。 argsで(あるいはargsで指定されなかったらコマンドラインで)指 定されたファイルをコンパイルし、できたバイトコードを通常の方法で保存しま す。 この関数はソースファイルの存在するディレクトリを検索しません;指定された ファイルをコンパイルするだけです。

このモジュールがスクリプトとして実行されると、main()がコマン ドラインで指定されたファイルを全てコンパイルします。

参考:

compileall:モジュール
ディレクトリツリー内のPythonソースファイルを全てコンパイルするライブラリ。.
ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。