Essential tools for Python development (was: pyflakes, pylint, pychecker - and other tools)

Ben Finney ben+python at benfinney.id.au
Tue Apr 21 21:56:44 EDT 2009


Esmail <ebonak at hotmail.com> writes:

> In particular, are the stylistic recommendations that pylint makes
> considered sensible/valid?

You can configure pylint extensively, to follow *your* chosen style
recommendations. (Though I haven't found good documentation on how
that's done.)

> Are there any other tools you consider essential to Python
> development?

Whatever they are, they need to be free software so you can depend on
them continuing to serve the needs of users long into their future.

A mature, programmable text editor that you can learn once for all your
text editing needs, and that already has excellent Python support, like
GNU Emacs or Vim.

A refactoring tool that works with your editor, like ‘bicyclerepair’
<URL:http://bicyclerepair.sourceforge.net/> or ‘rope’
<URL:http://rope.sourceforge.net/>.

A good unit test framework (sorry, ‘unittest’, you're a good start but
not very Pythonic) like ‘nose’ (which builds incrementally on
‘unittest’) <URL:http://somethingaboutorange.com/mrl/projects/nose/>.

A test double library (sometimes called a “mock object” library), my
favourite being MiniMock <URL:http://pypi.python.org/pypi/MiniMock>.

Sphinx <URL:http://sphinx.pocoo.org/> for extracting reStructuredText
documentation from your code and rendering it to various formats.

A development-environment isolation tool, like ‘virtualenv’
<URL:http://pypi.python.org/pypi/virtualenv>.

A project build scripting tool which integrates with many of the above
tools, like Paver <URL:http://www.blueskyonmars.com/projects/paver/>.

-- 
 \       “For fast acting relief, try slowing down.” —Jane Wagner, via |
  `\                                                       Lily Tomlin |
_o__)                                                                  |
Ben Finney



More information about the Python-list mailing list