python .pyを.pycにコンパイルすることはありません。

python .pyを.pycにコンパイルすることはありません。

私はPythonがソースファイルをコンパイルすることを読んだ。.py自己生産.pycしかし、私の場合、これは起こりません。私のソースファイルは/opt/osqaフォルダ内にあり、常にsudo権限を使用する必要があります。

このソースファイルを手動でコンパイルするにはどうすればよいですか?私はArchLinuxを使用しています。特定のパッケージが必要ですか?

答え1

ファイルをインポートすると、ファイルが.pyc生成されます。通常、スクリプトのみを実行すると、コンパイルされたファイルは生成されません。たとえば、

% cat tmp.py
print 'in tmp.py'

ファイルを正常に実行すると、次のようになります。

% python tmp.py 
in tmp.py

生成されたファイルがありません.pyc

% ls tmp.py*
tmp.py

ただし、import tmpリアルタイムPythonインタプリタを使用している場合:

% python
Python 2.7.6 (default, Nov 14 2013, 09:55:56) 
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.2.79)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import tmp
in tmp.py
>>> 

次に、コンパイルされたファイルを作成します。

% ls tmp.py*
tmp.py  tmp.pyc

したがって、これはスクリプトの実行方法によっては通常の動作になる可能性があります。

答え2

Pythonソースを含むディレクトリの権限設定によって.pycファイルが生成されないようです。詳細については、次を参照してください。http://effbot.org/pyfaq/how-do-i-create-a-pyc-file.htm

関連情報