python - tengo - Cómo comprobar la versión de Django
install django version (26)
Básicamente, lo mismo que la respuesta de bcoughlan, pero aquí está como un comando ejecutable:
$ python -c "import django; print(django.get_version())"
2.0
Tengo que usar Python y Django para nuestra aplicación. Así que tengo dos versiones de Python, 2.6 y 2.7. Ahora he instalado Django. Podría ejecutar la aplicación de muestra para probar Django con éxito. ¿Pero cómo me aseguro de si Django usa la versión 2.6 o 2.7 y qué versión de los módulos usa Django?
Como dice que tiene dos versiones de python, asumo que están en diferentes entornos virtuales (por ejemplo, venv) o quizás en entornos conda .
Cuando instaló django, era probable que estuviera en un solo entorno. Es posible que tengas dos versiones diferentes de django, una para cada versión de python.
Desde un terminal Unix / Mac, puede verificar su versión de python de la siguiente manera:
$ python --version
Si quieres conocer la fuente:
$ which python
Y para comprobar la versión de django:
$ python -m django --version
Después de django 1.0 puedes hacer esto
$ django-admin --version
1.11.10
Django 1.5 es compatible con Python 2.6.5 y versiones posteriores.
Si está bajo Linux y desea verificar la versión de Python que está usando, ejecute python -V
desde la línea de comandos.
Si desea verificar la versión de Django, abra una consola de Python y escriba
>>> import django
>>> django.VERSION
(2, 0, 0, ''final'', 0)
Django utilizará la versión de Python especificada por la variable de entorno PYTHONPATH. Puede usar echo $PYTHONPATH
en un shell para determinar qué versión se usará.
Las versiones de módulo utilizadas por Django serán las versiones de módulo instaladas bajo la versión de Python especificada por PYTHONPATH.
Escriba lo siguiente en el símbolo del sistema:
django-admin.py version
Si django está instalado, imprimirá su versión actual (por ejemplo, 1.6.5
),
de lo contrario el shell imprimirá un mensaje de error.
Hay un módulo de versiones de utils sin documentar en django.
https://github.com/django/django/blob/master/django/utils/version.py
Con eso puedes obtener la versión normal como una cadena o una tupla de versión detallada:
>>> from django.utils import version
>>> version.get_version()
... 1.9
>>> version.get_complete_version()
... (1, 9, 0, ''final'', 0)
Hay varias maneras de obtener la versión de Django. Puede utilizar cualquiera de los siguientes que se indican a continuación de acuerdo con sus requisitos.
Nota: si está trabajando en un entorno virtual, cargue su entorno de Python
Comandos de terminal
-
python -m django --version
-
django-admin --version
odjango-admin.py version
-
./manage.py --version
opython manage.py --version
-
pip freeze | grep Django
-
python -c "import django; print(django.get_version())"
-
python manage.py runserver --version
Comandos de Shell Django
-
import django django.get_version()
Odjango.VERSION
-
from django.utils import version version.get_version()
Oversion.get_complete_version()
-
import pkg_resources pkg_resources.get_distribution(''django'').version
(No dude en modificar esta respuesta, si tiene algún tipo de corrección o si desea agregar más información relacionada).
Para Python :
import sys
sys.version
Para Django (como han mencionado otros aquí):
import django
django.get_version()
El problema potencial con la simple comprobación de la versión, es que las versiones se actualizan y el código puede quedar desactualizado. Desea asegurarse de que ''1.7'' <''1.7.1'' <''1.7.5'' <''1.7.10''. Una comparación de cadena normal fallaría en la última comparación:
>>> ''1.7.5'' < ''1.7.10''
False
La solución es utilizar StrictVersion desde distutils .
>>> from distutils.version import StrictVersion
>>> StrictVersion(''1.7.5'') < StrictVersion(''1.7.10'')
True
Para verificar el uso de un shell de Python, haga lo siguiente.
>>>from django import get_version
>>> get_version()
Si desea hacerlo en shell de Unix / Linux con una sola línea, entonces haga
python -c ''import django; print(django.get_version())''
Una vez que haya desarrollado una aplicación, puede verificar la versión directamente usando lo siguiente.
python manage.py runserver --version
Pensé que la forma más pitónica era:
>>> import pkg_resources;
>>> pkg_resources.get_distribution(''django'').version
''1.8.4''
Esto se vincula directamente con setup.py: https://github.com/django/django/blob/master/setup.py#L37
¡Definitivamente es la mejor manera de obtener el número de versión de CUALQUIER paquete!
También hay distutils
>>> from distutils.version import LooseVersion, StrictVersion
>>> LooseVersion("2.3.1") < LooseVersion("10.1.2")
True
>>> StrictVersion("2.3.1") < StrictVersion("10.1.2")
True
>>> StrictVersion("2.3.1") > StrictVersion("10.1.2")
False
En cuanto a la versión de python
, estoy de acuerdo con @jamesdradbury
>>> import sys
>>> sys.version
''3.4.3 (default, Jul 13 2015, 12:18:23) /n[GCC 4.2.1 Compatible Apple LLVM 6.1.0 (clang-602.0.53)]''
Atando todo junto:
>>> StrictVersion((sys.version.split('' '')[0])) > StrictVersion(''2.6'')
True
Puede obtener la versión de django ejecutando el siguiente comando en un indicador de shell
python -m django --version
Si Django está instalado, debería ver la versión; de lo contrario, aparecerá un mensaje de error que dice "No hay módulo llamado django".
Puedes hacerlo sin Python también. Solo escribe esto en tu directorio Django:
cat __init__.py | grep VERSION
Y obtendrás algo como:
VERSION = (1, 5, 5, ''final'', 0)
Si desea hacer una comparación de la versión de Django, puede usar django-nine
(pip install django-nine). Por ejemplo, si la versión de Django instalada en su entorno es 1.7.4, lo siguiente sería cierto.
from nine import versions
versions.DJANGO_1_7 # True
versions.DJANGO_LTE_1_7 # True
versions.DJANGO_GTE_1_7 # True
versions.DJANGO_GTE_1_8 # False
versions.DJANGO_GTE_1_4 # True
versions.DJANGO_LTE_1_6 # False
Si está trabajando en un entorno virtual, solo congelarlo le dirá que si no puede usar esto
django-admin --version
Si ha instalado la aplicación:
$ django-admin.py version
2.0
Si tienes pip , también puedes hacer una
pip freeze y te mostrará tu versión de Django.
Puede canalizarlo a través de grep para obtener solo la versión de Django. Es decir,
josh@villaroyale:~/code/djangosite$ pip freeze | grep Django
Django==1.4.3
Vaya al directorio de inicio de su proyecto Django y haga:
./manage.py --version
Ve a la consola y escribe:
django-admin --version
ACTUALIZAR
últimamente me he dado cuenta de que la forma correcta sería ir al shell de Python y verificar la versión allí:
$ python
>> import django
>> django.VERSION
abre el símbolo del sistema en tu PC con Windows.
Una vez que lo hayas abierto, escribe la siguiente línea.
py -m django --version
A cambio, obtendrá la versión de Django que ha instalado en su computadora.
ejecute pip list
en LINUX TERMINAL y encuentre Django y su versión en list
ejecutar pip freeze
en cmd en Windows
puede importar django y luego escribir la declaración de impresión como se indica a continuación para conocer la versión de django, es decir, instalada en su sistema:
>>> import django
>>> print(django.get_version())
2.1
Escribe el siguiente comando en el shell de Python
import django
django.get_version()
>>> import django
>>> print(django.get_version())
1.6.1
Estoy usando el IDLE (GUI de Python).
django-admin --version
python manage.py --version
pip freeze | grep django
python -m django --version
Si Django está instalado, debería ver la versión de su instalación. Si no es así, aparecerá un mensaje de error que dice “ No module named django ”
.