Python: 50 modules for all needs

by Jean. 47 Comments -

One thing I really love with the Python programming language is its incredible extensibility. Here’s a list of 50 awesome modules for Python, covering almost all needs: Databases, GUIs, Images, Sound, OS interaction, Web, and more.

Graphical interface wxPython http://wxpython.org
Graphical interface pyGtk http://www.pygtk.org
Graphical interface pyQT http://www.riverbankcomputing.co.uk/pyqt/
Graphical interface Pmw http://pmw.sourceforge.net/
Graphical interface Tkinter 3000 http://effbot.org/zone/wck.htm
Graphical interface Tix http://tix.sourceforge.net/
Database MySQLdb http://sourceforge.net/projects/mysql-python
Database PyGreSQL http://www.pygresql.org/
Database Gadfly http://gadfly.sourceforge.net/
Database SQLAlchemy http://www.sqlalchemy.org/
Database psycopg http://www.initd.org/pub/software/psycopg/
Database kinterbasdb http://kinterbasdb.sourceforge.net/
Database cx_Oracle http://www.cxtools.net/default.aspx?nav=downloads
Database pySQLite http://initd.org/tracker/pysqlite
MSN Messenger msnlib http://auriga.wearlab.de/~alb/msnlib/
MSN Messenger pymsn http://telepathy.freedesktop.org/wiki/Pymsn
MSN Messenger msnp http://msnp.sourceforge.net/
Network Twisted http://twistedmatrix.com/
Images PIL http://www.pythonware.com/products/pil/
Images gdmodule http://newcenturycomputers.net/projects/gdmodule.html
Images VideoCapture http://videocapture.sourceforge.net/
Sciences and Maths scipy http://www.scipy.org/
Sciences and Maths NumPy http://numpy.scipy.org//
Sciences and Maths numarray http://www.stsci.edu/resources/software_hardware/numarray
Sciences and Maths matplotlib http://matplotlib.sourceforge.net/
Games Pygame http://www.pygame.org/news.html
Games Pyglet http://www.pyglet.org/
Games PySoy http://www.pysoy.org/
Games pyOpenGL http://pyopengl.sourceforge.net/
Jabber jabberpy http://jabberpy.sourceforge.net/
Web scrape http://zesty.ca/python/scrape.html
Web Beautiful Soup http://crummy.com/software/BeautifulSoup
Web pythonweb http://www.pythonweb.org/
Web mechanize http://wwwsearch.sourceforge.net/mechanize/
Localisation geoname.py http://www.zindep.com/blog-zindep/Geoname-python/
Serial port pySerial http://pyserial.sourceforge.net/
Serial port USPP http://ibarona.googlepages.com/uspp
Parallel Port pyParallel http://pyserial.sourceforge.net/pyparallel.html
USB Port pyUSB http://bleyer.org/pyusb/
Windows ctypes http://starship.python.net/crew/theller/ctypes/
Windows pywin32 http://sourceforge.net/projects/pywin32/
Windows pywinauto http://www.openqa.org/pywinauto/
Windows pyrtf http://pyrtf.sourceforge.net/
Windows wmi http://timgolden.me.uk/python/wmi.html
PDA/GSM/Mobiles pymo http://www.awaretek.com/pymo.html
PDA/GSM/Mobiles pyS60 http://sourceforge.net/projects/pys60
Sound pySoundic http://pysonic.sourceforge.net/
Sound pyMedia http://pymedia.org/
Sound FMOD http://www.fmod.org/
Sound pyMIDI http://www.cs.unc.edu/Research/assist/developer.shtml
GMail libgmail http://libgmail.sourceforge.net/
Google pyGoogle http://pygoogle.sourceforge.net/
Expect pyExpect http://pexpect.sourceforge.net/
WordNet pyWordNet http://osteele.com/projects/pywordnet/
Command line cmd http://blog.doughellmann.com/2008/05/pymotw-cmd.html
Compiler backend llvm-py http://mdevan.nfshost.com/llvm-py/
3D VPython http://vpython.org

Any other modules we should include in the list? Leave us a comment!
Into Python? Be sure to check out this article!

  • http://love-python.blogspot.com/ subeen

    Thanks for the list. It’s an useful one.

  • Federico

    Cool thanks!

  • Pingback: Web 2.0 Announcer

  • http://code.google.com/p/crunchy André Roberge

    A great game module is pyglet (http://www.pyglet.org).

    Instead of Soya (which gives a 404), you should probably list PySoy (http://www.pysoy.org/).

  • http://www.lyxia.org jbj

    @André: Thanks for your contribution! Both modules has been added to the list :)

  • anom

    Good list.
    sqlalchemy is pretty good.
    http://www.sqlalchemy.org/

  • http://www.lyxia.org jbj

    Added! Thanks for contributing!

  • JW

    Missing a compiler backend ;-)

    http://mdevan.nfshost.com/llvm-py/

  • Ernesto Sanchez

    Awesome list. Thanks for sharing!

  • http://divmod.org/ Allen Short

    Also, for network applications, there’s Twisted. http://twistedmatrix.com/

  • http://www.lyxia.org jbj

    @JW & Allen Short: Both added :)

  • jinzo

    Looks like you missed pymsn for MSN stuff, looks like it supports newer MSN protocols ;)

  • http://ooyes.net web design company

    How can it not have [BeautifulSoup](http://crummy.com/software/BeautifulSoup) on it?

  • http://www.luke.maurits.id.au Luke Maurits

    Vpython (http://vpython.org/) has a very nice “visual” module for simple 3D programming in Python.

  • http://www.lyxia.org jbj

    Post updated with the three last contributions. Thanks!

  • Pingback: 50 módulos Python para todas las necesidades

  • Greg

    Jeepers, haven’t you pythonistas gotten round to doing something like CPAN? Doesn’t all this grubbing for one module here, another module there hearken back to, I dunno, the days of FORTRAN?

  • http://echohelloworld.com Jasper

    Oooh, useful. Thanks!

  • Pingback: Web 2.0 Announcer

  • projecktzero

    “Jeepers, haven’t you pythonistas gotten round to doing something like CPAN? Doesn’t all this grubbing for one module here, another module there hearken back to, I dunno, the days of FORTRAN?”

    I haven’t checked, but I suspect that the vast majority of these modules are on.
    http://pypi.python.org/pypi

  • unlimitedzoom

    Djnago? Django!

  • Pingback: Global Nerdy | 50 Python Modules for all Needs

  • http://wiki.saymoo.org alon

    construct – parser/generator for protocols, declarative style. Used it for a number of protocols, much more fun then writing parsers by hand: http://construct.wikispaces.com/
    also ipython – not technically a library, but can be used as one (embed a shell in an app for debugging purposes).

  • Pingback: links for 2008-06-16 « 個人的な雑記

  • Pingback: A List of 50 Awesome Python Modules « Linux and Friends

  • Pingback: links for 2008-06-17 « Mandarine

  • visit now

    It’s a great website of yours. I surfed by and found it very informative. Bookmarked and check you back in a while

  • Pingback: links for 2008-06-19 | Databyss.com

  • Pingback: Web 2.0 Announcer

  • Pingback: Tims Blog » Blog Archive » Yup

  • Pingback: Retour d’expérience: Les digg likes anglophones

  • Pingback: A New Day Has Come » Blog Archive » 50 modules for all needs

  • http://www.techiesouls.com MOin

    Thats looking like an ultimate list of useful modules and i am looking into the games some of them i never heard about. thanks for compiling some huge useful list JBJ.

  • http://python.su Alexey Afinogenov

    Thanks for the nice list.

  • Pingback: 50 Python modules « Bloguear por bloguear…

  • Jon

    For “games,” I’d suggest Panda3D, which is more than a single module, but also does a lot more than the other modules listed. (Pirates of the Caribbean is written in Panda3D)

  • Pingback: Всё для Python

  • Pingback: Python: 50个能够满足所有需要的模块 | 5U Magazine

  • ezpython

    Please include decimal module.

  • Pingback: Sérgio Luiz Araújo Silva (voyeg3r) 's status on Thursday, 05-Nov-09 13:51:38 UTC - Identi.ca

  • Pingback: Should you write “List posts” on your blog?

  • http://www.stealthcopter.com/blog Matthew

    Nice list, thanks. I think it’d be useful to include mpi4py too. :)
    http://code.google.com/p/mpi4py/

  • Tim

    py2exe- turns your code into a cool .exe

  • http://countergram.com/ Jason S

    Neat list. Not every module might be to everyone’s taste (3 for MSN messenger interoperability? Really?) but it’s a good idea to show off some top modules. I’d add M2Crypto, which is an OpenSSL wrapper and a great all-round encryption library.

    And yes, most (nearly all) important Python packages live on PyPi and can be installed with pip (or easy_install, part of setuptools). Python actually has pretty good package management, once you look into the capabilities of pip and virtualenv (cleanroom package deployment.)

    I’d say add them to the list too, but they’re more utilities than modules.

  • http://pythonprojectwatch.blogspot.com/ Casey Strouse

    I have found a lot of really awesome libraries through Google Code. I’ve been compiling a list and posting about my favorite libraries on my website.

    Two of my favorites so far are gdata-python-client and yql, for working with the Google APIss and Yahoo Query Language, respectively.

  • Julius

    Thanks guys this is great, it would also work better if all the modules are compacted into one exe file. thanks

  • http://thyagjs.blogspot.in/ Thyag Sundaramoorthy

    Pandas is another great library for data analysis:
    http://pandas.pydata.org/