Obscuring Python source from end users
drsalists at gmail.com
Thu Oct 2 00:06:00 CEST 2014
On Mon, Sep 29, 2014 at 4:47 AM, Steven D'Aprano
<steve+comp.lang.python at pearwood.info> wrote:
> norman.ives at gmail.com wrote:
>> Hello list
>> Python 3.4 applies.
>> I have a project that involves distributing Python code to users in an
>> organisation. Users do not interact directly with the Python code; they
>> only know this project as an Excel add-in.
>> Now, internal audit takes exception in some cases if users are able to see
>> the source code.
> You have my sympathy.
Actually, I don't think this is that bad. Companies have rules; one
simply has to learn to live with this or suffer greatly. Some rules
are worth fighting, but this probably isn't one of them.
>> So I'm wondering if anyone has clever suggestions in this regard...
> Yes. Distribute the pyc files only.
Yes, this is the way it's usually done. Supposedly Microsoft did this
for a while, after acquiring some Python software. In the Python 3.4
case, the pyc's should be in the __pycache__ subdirectory.
Another option would be to convert to Cython and compile (not as bad
as it sounds). But __pycache__/*.pyc would probably be easier.
More information about the Python-list