2017-05-03 10 views
2

CPython 3.xとPyPyはPEP 3147に従い、__pycache__ディレクトリにpyc-filesを格納し、Pythonバージョンの接尾辞を付けます。 CPython 2.7がそのファイルを__pycache__ディレクトリに保存するにはどうすればいいですか?(同じディレクトリ内の対応するpyファイルのすぐ隣に接尾辞を付けずにpycファイルを保存するというデフォルトの動作とは違います)CPython 2.7に__pycache__ディレクトリを使用させるにはどうすればよいですか?

他の多くのソフトウェアがCPython 2.xのデフォルトの動作を期待しているので、おそらく私はこのシステム全体をやってはいけないと思います。だから私が探しているのは、プロジェクトごとや仮想環境ごとにこれを行う方法です。他に解決策がない場合は、コンパイルされカスタムにインストールされます(例えば、~/bin)。CPythonインタープリタ。


いくつかの調査:DebianメーリングリストのRelevant discussion; CPython 3.2でPEP 3147を実装するためのcode review

+0

私は、なぜこれがバックポートされていないのかを明らかにしたアーカイブされたディスカッションを見つけました。あなたが望むなら、それを見てください。 –

+0

@ JimFasarakisHilliardありがとう、私はちょうどそれを見た。これは、PEPが示唆しているように、これがオプションの機能としてバックポートされていないということは幾分奇妙です。 –

答えて

3

PEP 3147のbackportsセクションは、それがバック移植される可能性を暗示するが:

3.2(そしておそらく 2.7)より前のPythonのバージョンの

、このPEPをバックポートすることが可能です。しかし、Python 3.2(およびおそらく 2.7)では、この動作はデフォルトでオンになっており、実際には古い動作に置き換えられます。

これは私の知る限りではありませんでした。ディスカッションhereは、理由を示します:

これは2.7ではありません。パッチは簡単に ポートにすることができますが、これは古いPythonの動作のかなりの変化を表しています。

これは、Python 2.7のリリースマネージャからの返信です。彼(正しくimho)は、この機能を移植する必要はありませんでした。

最後に、唯一の方法は自分で実装することです(これは簡単な作業です)。

関連する問題