Good artists borrow. Great artists steal.


-Pablo Picasso


Other Items

In addition to the packages you've already seen, Anaconda (the Python distribution you're using right now) comes with a collection of other packages that will keep you from reinventing the wheel. Here is a list of some of the more useful packages and[standard library modules that you can use. Odds are that if you want to do something, the standard library does it already.

A lot of these already have "How To" entries on the Python Users Group forums.


Third-Party Packages


Beautiful Soup

Beautiful Soup is a high-level package for web/screen scraping.

Bokeh

Bokeh is a server for interactive graphs. Warning: if you're actually running this as a server to share with others, jump through the appropriate hoops.

Comtypes

Microsoft Windows has certain types of objects called COM types that you can use to hook into other programs and the operating system.

Cython

Cython enables you to compile your Python in C for speed.

Flask

Flask is a dirt-simple web framework for creating websites.

Nltk

Contains various natural lanugage processing tools

Openpyxl, xlwings, xlwt

Is used for manipulating Excel files.

PyODBC

Presuming you've downloaded the appropriate 64 bit ODBC driver from the HP Service Center, you can make execute SQL on a server directly from Jupyter.

PyQT

Is a framework that makes QT and Python GUIs easy. Warning: This is GPLv3 software.

PyWin32

This provides various hooks into the windows operating system.

Requests

Easiest way to fetch webpages or files from the internet.

Seaborn

This provides pretty graphs with little effort.

Sqlalchemy

Object-relational mapping package for making SQL queries through an API.

Statsmodels

A purpose-built statistics package.


Useful Python Standard Library Modules


  • Note: these will generally be imported as lowercase import asyncio as lowercase is the convention for modules. Some of the above may or may not be styled in this manner.

Asyncio

Support for asynchronous servers, IO processes

Collections

Has support for some less used types such as double ended queues and default dictionaries.

Copy

If you want to make a copy of an instance (and not a reference), use copy.deepcopy().

Datetime/calendar

Python's datetime and calendar libraries are top notch for computing dates, weekedays, time deltas, etc.

Decimal

Support for true decimal (as opposed to float) operations for financial calculations.

Email

Send email from your Python scripts.

Itertools

This gives you tools for working with iterators (such as itertools.chain).

JSON

Support for reading a dumping json strings.

Functools

Functions are first class objects in Python. This gives you tools for altering functions.

iO

In addition to Python's built in IO facilities, this gives you elements for efficiently building text/byte strings.

OS

Various tools for interacting with your operating system (such as walking directories with os.walk).

Pickle / Shelve

Serialize in memory objects to disk.

Re

Support for regular expressions.

Sqlite3

A built in single-user database written in C for storing information in a relational database.

Subprocess

Call other programs on your computer via the command line.

Sys

Module for tweaking and inspecting your Python interpreter.

Threading / Multiprocessing

Tools for parallelizing programs.

Xml Element Tree

A library for reading XML trees.

Zipfile

A utility for zipping and unzipping files.


Next Up: Python Basics