How to check the version of Python modules

I suggest using pip in place of easy_install. With pip, you can list all installed packages and their versions with

pip freeze

In most Linux systems, you can pipe this to grep (or findstr on Windows) to find the row for the particular package you’re interested in:

Linux:

pip freeze | grep lxml

lxml==2.3

Windows:

pip freeze | findstr lxml

lxml==2.3

For an individual module, you can try the __version__ attribute. However, there are modules without it:

python -c "import requests; print(requests.__version__)"
2.14.2

python -c "import lxml; print(lxml.__version__)"

Traceback (most recent call last):
File “<string>”, line 1, in <module>
AttributeError: ‘module’ object has no attribute ‘version

Lastly, as the commands in your question are prefixed with sudo, it appears you’re installing to the global python environment. I strongly advise to take look into Python virtual environment managers, for example virtualenvwrapper.

Leave a Comment