In my years of programming in Python and roaming around GitHub's Explore section, I've come across a few libraries that stood out to me as being particularly enjoyable to use.
This blog post is an effort to further spread that knowledge. I specifically excluded awesome libs like requests, SQLAlchemy, Flask, fabric etc. because I think they're already pretty "main-stream". If you know what you're trying to do, it's almost guaranteed that you'll stumble over the aforementioned. This is a list of libraries that in my opinion should be better known, but aren't. 1. pyquery (with lxml) pip install pyquery For parsing HTML in Python, Beautiful Soup is oft recommended and it does a great job. Just how slow? What immediately stands out is how fast lxml is. So either slow and easy to use or fast and hard to use, right? Wrong! Enter PyQuery Oh PyQuery you beautiful seductress: from pyquery import PyQuerypage = PyQuery(some_html) last_red_anchor = page('#container > a.red:last')
Python Extension Packages for Windows. By Christoph Gohlke, Laboratory for Fluorescence Dynamics, University of California, Irvine.
Use pip version 6 or newer to install the downloaded .whl files. The binaries are compatible with the official CPython distribution on Windows >=6.0. Build Environment.
The extensions include wrappers for creating and deleting virtual environments and otherwise managing your development workflow, making it easier to work on more than one project at a time without introducing conflicts in their dependencies. Features¶ Organizes all of your virtual environments in one place.Wrappers for managing your virtual environments (create, delete, copy).Use a single command to switch between environments.Tab completion for commands that take a virtual environment as argument.User-configurable hooks for all operations (see Per-User Customization).Plugin system for more creating sharable extensions (see Extending Virtualenvwrapper). Introduction¶ The best way to explain the features virtualenvwrapper gives you is to show it in use. First, some initialization steps. Now we can install some software into the environment.
We can see the new package with lssitepackages: Support¶ Shell Aliases¶ Les environnements virtuels Python : virtualenv et virtualenvwrapper. Quand on commence à beaucoup programmer, on accumule rapidement plusieurs projets en cours de développement sur sa machine. Certains vieux, certains récents, qui utilisent tous des bibliothèques similaires, mais pas forcément de mêmes versions. Ou parfois des bibliothèques incompatibles. Parfois même, des version différentes de Python: Python 2.6, 2.7, 3.2 ? Et c’est sans compter les mises à jour de l’OS, qui a ses propres besoins en terme de libs et de versions.
Le jour où ça casse, c’est le chaos. Dans le monde de Python, la solution à ce problème est d’utiliser des environnements virtuels. Il existe plusieurs écoles: certains utilisent buildout. Virtual Environments — The Hitchhiker's Guide to Python. Tools of the Modern Python Hacker: Virtualenv, Fabric and Pip - electronic.habitat : alex.clemesha. July 05, 2009 In the jargon of the computer programmer, a hacker is someone who strives to solve problems in elegant and ingenious ways.
Part of the path to elegantly solving larger problems is to use tools that solve sub-problems very well. For the modern Python programmer, some of the most important tools to aid in reduced complexity and repetition are virtualenv, Fabric, and pip. Although these tools have no strict relationship (in the sense that many people may use one or two of these tools often, yet aren’t even aware of the others), they form a powerful suite when combined. An excellent example is the following: You have a Django project that you want to do automated deployment to both your staging and production environment (Fabric).
I have found virtualenv, pip, and Fabric together to be invaluable for my larger personal projects such as Wikipedia Game, but even for the smallest of projects, I always use at least one for something. virtualenv Badda-bing, you have used virtualenv! Package management - How to set up and use a virtual python environment in Ubuntu.