top button
Flag Notify
    Connect to us
      Site Registration

Site Registration

Distributing python applications as a zip file

+1 vote
2,600 views

A little known feature of Python: you can wrap your Python application in a zip file and distribute it as a single file. The trick to make it runnable is to put your main function inside a file called __main__.py
inside the zip file.

Example:

$ cat __main__.py 
print("Hello World!!!")

$ zip appl __main__.py 
adding: __main__.py (stored 0%)

$ rm __main__.py 
$ python appl.zip 
Hello World!!!

On Linux, you can even hack the zip file to include a shebang line!

$ cat appl
!/usr/bin/env python
This is a Python application stored in a ZIP archive.
$ cat appl.zip >> appl
$ chmod u+x appl
$ ./appl
Hello World!!!

It's not quite self-contained, as you still need to have Python installed, but otherwise it's a good way to distribute a Python application as a single file that users can just copy and run.

posted Jul 23, 2014 by anonymous

  Promote This Article
Facebook Share Button Twitter Share Button LinkedIn Share Button

...