简体   繁体   中英

Changing the directory where .pyc files are created

Is there a way to change the directory where .pyc file are created by the Python interpreter? I saw two PEPs about that subject ( 0304 and 3147 ), but none seems to be implemented in the default interpreter (I'm working with Python 3).

Did I miss something ?

This might be useful for some:Miscellaneous options , especially -B option:

If given, Python won't try to write .pyc files on the import of source modules. See also PYTHONDONTWRITEBYTECODE .

There's no way to change where the .pyc files go. Python 3.2 implements the __pycache__ scheme whereby all the .pyc files go into a directory named __pycache__ . Python 3.2 alpha 1 is available now if you really need to keep your directories clean.

Until 3.2 is released, configure as many tools as you can to ignore the .pyc files.

Yes, starting from Python 3.8 you can control this behavior. The original discussion starts from pep 304 in 2003.

While this original PEP was withdrawn, a variant of this feature was eventually implemented for Python 3.8 in https://bugs.python.org/issue33499

In the result, you can control using PYTHONPYCACHEPREFIX=path , -X pycache_prefix=path and sys.pycache_prefix .

Python files are NOT always stored in the same directory and will get directed to pycache if you use pycache. Any answers on being able to have custom locations and names, because importing the module is rather temperamental and doesn't always work. You will be able see what I mean at github.com/LolexInc/Lolex-Tools/tree/Beta and view JTToolsInstaller.py. There is a lot of mess in it.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM