This page is storefront and distribution center for free programs and software written in the Python programming language. Some downloads here are complete programs of interested to all customers, and others are smaller examples aimed at Python learners. All the code here is intended to be both useful and educational, and is entirely free; if you use the programs here, we welcome feedback, suggestions, and bug reports at the Email link you'll find at the bottom of this page.
This section collects full programs that you can download and run on your Mac, Windows, and Linux computers. For download locations, screenshots, and more, click each program's icon or name to go to its main page.
This section's programs span application domains. Click their first-column links to go to their main pages. All are provided in source-code form and run on Mac, Windows, and Linux, and most are run from command lines—in Terminal on Macs, Command Prompt on Windows, or PyEdit's Run Code (see above). The "Tools" column gives primary tools used for programmers, and "Images" lists screenshots where applicable.
Among highlights here: iconify builds ".icns" and ".ico" files on both Mac and Windows; tagpix helps you organize your photo collections; and ziptools provides scripts and functions that zip and unzip archives anywhere, and fill in crucial support missing from Python's own zip module—symlinks, folders, Windows long paths, modtime propagation, and cruft-file skips.
|ziptools||Create and extract zipfile archives everywhere||os, zipfile||1|
|iconify||Make Windows and Mac icon files from images||struct, PIL/Pillow, bytes||1 2|
|treesize||Report the size taken by each folder and file||os, files, recursion||1 2|
|unicodemod||Convert a Unicode text-file's encoding to any other||files, os, Unicode||1|
|fixeoln||Swap Windows or Unix end-lines in text files, on both||files, Unicode, 3.X+2.X||1|
|pickcolor||GUI: map color ~ RGB string, or RGB string ~ color||tkinter GUIs, 3.X+2.X||1 2|
|tagpix||Collect and rename photos with a date-taken prefix||PIL/Pillow, text, files||1|
|flatten-iTunes||Merge your Itunes or other music folders into one||folders, files, text||1|
|debugtypes||Test function arguments and result types (decorator)||decorators, types, bytes||1|
This section's programs pertain to Internet or web scripting. Click their first-column links to go to their main pages. All are provided in source-code form and run on Mac, Windows, and Linux, and most are run from command lines, though some run in web browsers or servers too, and most may be run in PyEdit's Run Code (see above). The "Tools" column gives tools used for programmers, and "Images" lists screenshots if relevant
Among notables here: sitesearch adds search to websites; thumbspage generates an index webpage for image folders; pylotto is a web-based lottery application; and genhtml provides a framework for generating webpages with common parts coded in template files that are automatically inserted each time a website it built. Many of the programs here are used to build the site you are viewing now.
|sitesearch||Add a search function to websites via CGI redirects||web scripting, URLs||1 2|
|genhtml||Generate website files using static HTML inserts||files, text, Unicode||1 2 3|
|thumbspage||Make thumbnail-index web pages for image folders||PIL/Pillow, files, Unicode||1 2 3|
|imapfetch||Fetch email from server-account folders via IMAP||files, imaplib, email||1 2 3|
|pixindex||Make and upload HTML and zip files to view photos||zipfile, FTP, text||1 2|
|cleansite||Find unused files in a local copy of a website||HTML and URL parsing||1 2|
|pystockmood||Guess stock-market mood from live webpage text||re, urllib, page scraping||1|
|pylotto||Give away Python books with an online lottery||email, websites, random||1|
|headcode||Insert or remove code in a folder's HTML files||files, Unicode, bytes||1|
This section's programs are smaller examples included primarily for Python learners. Most are supplements to material in my Python books, and span application domains. Click their first-column links to go to their main pages or source files.
All examples here are provided in source-code form and run on Mac, Windows, and Linux, and all can be run from command lines, IDLE, PyEdit's Run Code, or other Python launching schemes. The "Tools" column gives tools used (mostly of interest to programmers), and "Images" lists screenshots where applicable.
|methods||Classmethods versus staticmethods||OOP class techniques||1|
|coroutines||Basic yield-based coroutines switcher||functions, generators||1 2|
|generators||The evolution of Python generators||functions, generators||1|
|map/lambda||Nested loops via map+lambda and more||loops, map, lambda||1|
|aca_utils||US ACA health insurance premium tax credit||basic math tools||1|
|timers||More on code timing (now in LP5E)||time module||1|
|matrixes||More loops/comprehensions (now in LP5E)||iteration tools||1|