From the README:
yOBD-II (a.k.a. "pyobd2") is a Python library for communicating with OBD-II vehicles. Its goal is to make writing programs for vehicle diagnostics and monitoring vehicle data as easy as possible. Being written entirely in Python, pyobd2 is intended to be portable across many platforms, including Mac OS X, Linux, BSD, and Windows.
pyOBD-II works with ELM327 compatible interfaces, and is written and maintained by Peter J Creath. You can
download pyOBD-II from Sourceforge.