Distributing applications that use 3rd party modules

castironpi castironpi at gmail.com
Tue May 20 09:40:26 EDT 2008


On May 20, 7:56 am, Mike Driscoll <kyoso... at gmail.com> wrote:
> On May 17, 4:42 am, eliben <eli... at gmail.com> wrote:
>
>
>
>
>
> > Hello,
>
> > I'm getting into Python now after years of Perl, and as part of my
> > research I must understand how to do some common tasks I need.
>
> > I have a bunch of Windows PCs at work to which I want to distribute an
> > application I've developed on my PC. All these PCs have Python 2.5
> > installed.
>
> > If my application contains only code I've developed, I simply zip its
> > directory with .py files and send it to everyone, who can then use it
> > by running the entry-point .py file. However, what if I've installed
> > some 3rd party modules on my PC, and my application uses them (for
> > example pyparsing, PiYAML and some others) ? I don't want to manually
> > install all these packages (there may be dozens of them) on all those
> > PCs (there may be dozens of those too). What is the best method I can
> > use ? Naturally, I want all the non-standard packages my app uses to
> > be detected automatically and collected into some kind of convenient
> > distributable that is easy to pass around and run.
>
> > I'm aware of py2exe - tried it and it works fine. But it creates huge
> > executables, and I don't want to distribute those all the time. I much
> > prefer a zipped directory of .py scripts that takes some 10s of KBs.
>
> > Thanks in advance,
> > Eli
>
> One way I forgot to mention is to put Python on the network (i.e. the
> intranet). We do that here at work and I can develop my applications
> on my machine and then put them on there for anyone to use. That way
> they never have to install Python, let alone the bother of installing
> dependencies.
>
> Mike- Hide quoted text -
>
> - Show quoted text -

Impossible and Useless here:

I assert there's no way to generate the list.

a= raw_input( )
if a== 'something unknown':
  b= 'imp'
  b+= 'ort '
  b+= 'os'
  exec( b )



More information about the Python-list mailing list