[Python-Dev] #12982: Should -O be required to *read* .pyo files?

Steven D'Aprano steve at pearwood.info
Thu Jun 14 05:25:25 CEST 2012


On Wed, Jun 13, 2012 at 09:54:30PM -0400, Terry Reedy wrote:
> >So, no, we
>> You mean the interpreter?

Yes.
> >should never use
>> Do you mean import or execute?
> Current, the interpreter executes any bytecode that gets imported.

Both.
> >.pyo files unless explicitly told to do so,
>> What constitutes 'explicitly told to do so'? Currently, an 'optimized' 
> file written as .pyo gets imported (and hence executed) if
> 1) the interpreter is started with -O
> 2) a custom importer ignores the absence of -O
> 3) someone renames x.pyo to x.pyc.

Any of the above are fine by me.
I oppose this one:
4) the interpreter is started without -O but there is no .pyc file.
since it can lead to a mismatch between what I (the developer) thinks is 
being run and what is actually being run (or imported).
For the avoidance of doubt, if my end-users secretly rename .pyo to .pyc 
files, that's my problem, not the Python's interpreter's problem. I 
don't expect Python to be idiot-proof.
-- 
Steven


More information about the Python-Dev mailing list

AltStyle によって変換されたページ (->オリジナル) /