Wie überprüfen Sie die version von python-Paket, wenn keine __version__ - variable gesetzt ist
Ich bin mit pyodbc
und ich möchte wissen, die version, die ich verwende.
Anscheinend kann ich nicht verwenden pyodbc.__version__
denn wahrscheinlich ist die variable nicht gesetzt.
Wie sonst kann ich herausfinden, die version des Pakets?
Manchmal anders benannte version-Methoden existieren. Nach dem Import der Paket, Sie können
dir(<packagename>)
zu sehen, welche Methoden verfügbar sind (wie <packagename>.__version__
). Andere häufigsten sind <packagename>.version
und <packagename>.VERSION
. Ich denke, es ist eine PEP für diese, aber kann mich nicht erinnern, offhand und nicht jedes Paket hält.InformationsquelleAutor LetsPlayYahtzee | 2016-03-29
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie die versions-info, verwenden Sie einfach
.version
:Pip-show-Kommando auch für Sie:
Könnte man umleiten von stdout und analysieren Sie die Ausgabe:
Aber ein einfacher Weg ist die Verwendung
pkg_resources
, wenn man sich die Quelle für zeigen, können Sie sehen, wie es wird gesammelt:Es nur verwenden, übergeben Sie den Paket-Namen:
Können Sie leicht erweitern und erhalten unterschiedliche Informationen, und verwenden eine ähnliche Logik auf der show-Befehl.
pkg_resources
Ansatz ist der richtige generischen Ansatz.InformationsquelleAutor Padraic Cunningham
Können Sie mit diesem Befehl (im terminal)
Für die installation von pip (debian, ubuntu):
cmd
?haha sorry, nur für linux
Und es gab mir zu denken, ich hatte eine neue Entdeckung gemacht 😉
Ich bin nicht sicher, was ich Antworte, ich sollte akzeptieren, die Sekunden ist generisch, wenn es um linux-Anwender während der erste löst das problem für alle, aber es beantwortet die Frage, ob für das jeweilige Paket nur
die erste Antwort von @Padraic das beste für Ihre Frage. Ich habe nicht gewußt, weil ich Sie nicht benutzen pyodbc. 🙂
InformationsquelleAutor qvpham
Erhalten einen kurzen Bericht über das Modul, einschließlich seiner version, Ausführung:
pip show pyodbc
in einer Eingabeaufforderung (z.B. bei Windows
cmd
). Dies funktioniert sogar bei Modulen ohne __version__ attribute.InformationsquelleAutor AlexM