Ik heb zojuist de python modules geïnstalleerd: construct
en statlib
met setuptools
zoals dit:
# Install setuptools to be able to download the following
sudo apt-get install python-setuptools
# Install statlib for lightweight statistical tools
sudo easy_install statlib
# Install construct for packing/unpacking binary data
sudo easy_install construct
Ik wil in staat zijn om (programmatisch) hun versies te controleren. Is er een equivalent voor python --version
dat ik vanaf de commandoregel kan uitvoeren?
Mijn python versie is 2.7.3
.
Ik stel voor om pip in plaats van easy_install te gebruiken. Met pip kunt u een lijst van alle geïnstalleerde pakketten en hun versies maken met
pip freeze
In de meeste Linux systemen kun je dit naar grep
(of findstr
onder Windows) leiden om de rij te vinden voor het specifieke pakket waarin je'geïnteresseerd bent:
Linux:
$ pip freeze | grep lxml
lxml==2.3
Windows:
c:\> pip freeze | findstr lxml
lxml==2.3
Voor een individuele module kunt u het __version__
attribuut proberen, maar er zijn modules zonder:
$ 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__'
Tenslotte, omdat de commando's in uw vraag voorafgegaan worden door sudo
, lijkt het erop dat u in de globale python omgeving aan het installeren bent. Het is sterk aan te raden om eens te kijken naar python virtuele omgeving managers, bijvoorbeeld virtualenvwrapper
Ik denk dat dit kan helpen maar installeer eerst show
package om pip show
te draaien en gebruik dan show om de versie te vinden!
sudo pip install show
# in order to get package version execute the below command
sudo pip show YOUR_PACKAGE_NAME | grep Version