Ich muss Python und Django für unsere Anwendung verwenden. Ich habe also zwei Versionen von Python, 2.6 und 2.7. Jetzt habe ich Django installiert. Ich konnte die Beispielanwendung zum erfolgreichen Testen von Django ausführen. Aber wie stelle ich sicher, ob Django die Version 2.6 oder 2.7 verwendet und welche Version der Module Django verwendet?
547
python3 -m django --version
Antworten:
Django 1.5 unterstützt Python 2.6.5 und höher.
Wenn Sie unter Linux arbeiten und die von Ihnen verwendete Python-Version überprüfen möchten, führen Sie sie über
python -V
die Befehlszeile aus.Wenn Sie die Django-Version überprüfen möchten, öffnen Sie eine Python-Konsole und geben Sie ein
quelle
Im Grunde das gleiche wie die Antwort von bcoughlan , aber hier ist es ein ausführbarer Befehl:
quelle
python -c "import django; print(django.VERSION)"
Rückkehr(1, 8, 5, 'final', 0)
python -c "import django; print(django.__version__)"
stattdessen tun . Es gibt auch zurück'2.2.4'
(es ist nur ein Aufruf vonget_version()
) und ist der Standard, dem die meisten anderen Bibliotheken folgen, da es in PEP 8 definiert ist . Es funktioniert seit Django 1.8Wenn Sie die Anwendung installiert haben:
quelle
>> django.VERSION
in Python Shell zeigt die richtige VersionGehen Sie zu Ihrem Django- Projekt-Home-Verzeichnis und gehen Sie wie folgt vor:
quelle
Ich benutze den IDLE (Python GUI).
quelle
Wenn Sie Pip haben , können Sie auch eine
und es wird Ihre All-Component-Version einschließlich Django angezeigt.Sie können es durch grep leiten, um nur die Django-Version zu erhalten. Das ist,
quelle
Für Python :
Für Django (wie von anderen hier erwähnt):
Das potenzielle Problem bei der einfachen Überprüfung der Version besteht darin, dass die Versionen aktualisiert werden und der Code möglicherweise veraltet ist. Sie möchten sicherstellen, dass '1.7' <'1.7.1' <'1.7.5' <'1.7.10'. Ein normaler Zeichenfolgenvergleich würde beim letzten Vergleich fehlschlagen:
Die Lösung besteht darin, StrictVersion von Distutils zu verwenden .
quelle
django.VERSION
, die bereits als Tupel kommt? Ich bin mir ziemlich sicher, dass diesdjango.VERSION >= (1, 8)
immer wie beabsichtigt funktioniert.Wie Sie sagen, haben Sie zwei Versionen von Python. Ich gehe davon aus, dass sie sich in verschiedenen virtuellen Umgebungen (z. B. venv) oder möglicherweise in Conda-Umgebungen befinden .
Wenn Sie django installiert haben, war es wahrscheinlich nur in einer Umgebung. Es ist möglich, dass Sie zwei verschiedene Versionen von Django haben, eine für jede Version von Python.
Von einem Unix / Mac-Terminal aus können Sie Ihre Python-Version wie folgt überprüfen:
Wenn Sie die Quelle wissen möchten:
Und um die Version von Django zu überprüfen:
quelle
Es gibt verschiedene Möglichkeiten, um die Django-Version zu erhalten. Sie können je nach Ihren Anforderungen eine der folgenden Angaben verwenden.
Hinweis: Wenn Sie in einer virtuellen Umgebung arbeiten, laden Sie bitte Ihre Python-Umgebung
Terminalbefehle
python -m django --version
django-admin --version
oderdjango-admin.py version
./manage.py --version
oderpython manage.py --version
pip freeze | grep Django
python -c "import django; print(django.get_version())"
python manage.py runserver --version
Django Shell-Befehle
import django django.get_version()
ODERdjango.VERSION
from django.utils import version version.get_version()
ODERversion.get_complete_version()
import pkg_resources pkg_resources.get_distribution('django').version
(Sie können diese Antwort jederzeit ändern, wenn Sie eine Korrektur haben oder weitere verwandte Informationen hinzufügen möchten.)
quelle
Gehen Sie wie folgt vor, um die Verwendung einer Python-Shell zu überprüfen.
Wenn Sie dies in einer Unix / Linux-Shell mit einer einzelnen Zeile tun möchten, tun Sie dies
Sobald Sie eine Anwendung entwickelt haben, können Sie die Version direkt anhand der folgenden Methoden überprüfen.
quelle
quelle
python manage.py --version
Note the double-
Django verwendet die von der Umgebungsvariablen PYTHONPATH angegebene Python-Version. Sie können
echo $PYTHONPATH
in einer Shell bestimmen, welche Version verwendet wird.Die von Django verwendeten Modulversionen sind die Modulversionen, die unter der von PYTHONPATH angegebenen Python-Version installiert sind.
quelle
Führen Sie
pip list
LINUX TERMINAL aus und finden Sie Django und seine Version auf der Listepip freeze
unter cmd unter Windows ausführenquelle
Sie können es auch ohne Python tun. Geben Sie dies einfach in Ihr Django-Verzeichnis ein:
Und Sie werden so etwas bekommen wie:
quelle
pip freeze
/ zu tunpython -c "import <module>; <module>.VERSION"
. Sie können einfach darauf verweisen:/path/to/env/bin/python -c "<command>"
oder wenn Sie pip installieren / verwenden möchten, dasselbe :/path/to/env/bin/pip freeze
. Ich benutze dies die ganze Zeit, besonders wenn ich als Root angemeldet bin und mein gesamter Anwendungscode so läuft wiewww-data
ich:sudo su www-data -c "/path/to/env/bin/pip install <module>"
und nicht einmal blinke. (Ich weiß, das ist fast 2 Jahre später, und Sie wissen wahrscheinlich jetzt davon - das ist mehr für den nächsten Mann)In Django gibt es ein Modul für undokumentierte Utils-Versionen
https://github.com/django/django/blob/master/django/utils/version.py
Damit können Sie die normale Version als String oder ein detailliertes Versionstupel erhalten:
quelle
Django-Version oder eine andere Paketversion
Öffnen Sie das Terminal oder die Eingabeaufforderung
Art
oder
Sie können jede Paketversion finden ...
Beispiel
usw....
quelle
pip freeze
zeigt eine Menge zusätzlichen Mist, wenn Sie in ein paar Paketen gepippt haben.Geben Sie Ihr CMD oder Terminal ein:
quelle
Ich dachte, der pythonischste Weg wäre:
Dies hängt direkt mit setup.py zusammen: https://github.com/django/django/blob/master/setup.py#L37
Es ist definitiv der beste Weg, um die Versionsnummer eines Pakets zu erhalten!
Auch gibt es
distutils
Was die
python
Version betrifft, stimme ich @jamesdradbury zuAlles zusammenbinden:
quelle
Wenn Sie einen Django-Versionsvergleich durchführen möchten, können Sie
django-nine
(pip install django-nine) verwenden. Wenn beispielsweise die in Ihrer Umgebung installierte Django-Version 1.7.4 ist, gilt Folgendes.quelle
Geben Sie den folgenden Befehl in die Python-Shell ein
quelle
Nach Django 1.0 können Sie dies einfach tun
quelle
Sie können die Django-Version erhalten, indem Sie den folgenden Befehl in einer Shell-Eingabeaufforderung ausführen
Python -m Django - Version
Wenn Django installiert ist, sollte die Version angezeigt werden, andernfalls wird die Fehlermeldung "Kein Modul mit dem Namen django" angezeigt.
quelle
Sie können django importieren und dann die unten angegebene print-Anweisung eingeben, um die auf Ihrem System installierte Version von django zu erfahren:
quelle
Python-Version wird von der Django-Version unterstützt
Geben Sie Python aus Ihrer Shell ein, um zu überprüfen, ob Django von Python gesehen werden kann. Versuchen Sie dann an der Python-Eingabeaufforderung, Django zu importieren:
quelle
Geben Sie einfach
python -m django --version
oder einpip freeze
, um alle Versionen der installierten Module einschließlich Django anzuzeigen.quelle