Pour compléter la suggestion de @kakawait, pour gérer ses virtualenv, essayer absolument virtualenvwrapper. Ça installe des commandes shell pour créer, lister, supprimer des environements, pour se déplacer facilement dans l’arbo de l’environnement, etc. L’essayer c’est l’adopter !
Pour le développement compatible avec plusieurs version de Python/Django/etc., regarder tox, ça automatise la création de virtualenvs et ça permet de lancer ta suite de tests dans tous ces environements en une seule commande. Indispensable si tu développes une bibliothèque open source.
Un autre outil indispensable : flake8, ça évite des erreurs typiques des langages dynamiques (variables non déclarées par exemple) et ça signale les manquements au standard de codage PEP8. Tous les éditeurs dignes de ce nom fournissent une intégration avec flake8 sous forme de plugin et bien entendu le mettre en premier dans ton script d’intégration continue, avant même d’exécuter les tests.
Qu’est-ce que tu entends par là ?