Python byte-compiled and optimized code
I am working on deploying Python on VxWorks platform as a part of project for my company. Accordingly, I would like to know couple of things from python's core-developers. Although I think I already know the answers for most of the questions, we need a confirmation from the community 1) Is the byte-compiled .pyc file and optimized .pyo file platform-independent?(including python versions 3.x) *If yes, is it guaranteed to stay that way in future?* 2) If the the generation of .pyc file fails (say, due to write protected area), does that stop the script execution? 3) Is it possible to redirect the location of the generation of .pyc files to other than that of the corresponding .py files? Regards, Swapnil
On Wed, Oct 7, 2009 at 10:34 AM, Swapnil Talekar <swapnil.st@gmail.com> wrote:
1) Is the byte-compiled .pyc file and optimized .pyo file platform-independent?(including python versions 3.x)
Yes.
If yes, is it guaranteed to stay that way in future?
Yes.
2) If the the generation of .pyc file fails (say, due to write protected area), does that stop the script execution?
No. It only means the bytecode won't be cached.
3) Is it possible to redirect the location of the generation of .pyc files to other than that of the corresponding .py files?
I think some support for this has been developed, at least experimentally, but I'm not sure if it's part of a stable release or not. It's more likely in Python 3.x, which I'm significantly less familiar with. -Fred -- Fred L. Drake, Jr. <fdrake at gmail.com> "Chaos is the score upon which reality is written." --Henry Miller
Fred Drake <fdrake <at> gmail.com> writes:
3) Is it possible to redirect the location of the generation of .pyc files to other than that of the corresponding .py files?
I think some support for this has been developed, at least experimentally, but I'm not sure if it's part of a stable release or not. It's more likely in Python 3.x, which I'm significantly less familiar with.
I haven't seen any such thing. If you need pyc files to reside in read-only directories, the best solution would be to generate them at install time (when you have write access to the directories). Regards Antoine.
Fred Drake wrote:
On Wed, Oct 7, 2009 at 10:34 AM, Swapnil Talekar <swapnil.st@gmail.com> wrote:
1) Is the byte-compiled .pyc file and optimized .pyo file platform-independent?(including python versions 3.x)
Yes.
To be clear, CPython's .pyc is platform independent for a particular x.y version, and should, I believe, stay the same for all x.y.z releases, but the format of .pyc may change slightly from x.y to x.(y+1)
You might be interested in the new PYTHONDONTWRITEBYTECODE environment variable supported as of Python 2.6. I personally think it is a great improvement. :-) Regards, Zooko
participants (5)
-
Antoine Pitrou
-
Fred Drake
-
Swapnil Talekar
-
Terry Reedy
-
Zooko O'Whielacronx