Zur Aktivierung gibt es ein Skript, das eine virtualenv von einem bereits laufenden Python-Interpeter mit execfile('C:/path/to/virtualev/Scripts/activate_this.py', dict(__file__='C:/path/to/virtualev/Scripts/activate_this.py'))
aktiviert. Da ich aber immer noch Pakete importieren kann, die nicht aus dem aktuellen Python-Skript in der virtualenv sind, bin ich verwirrt darüber, wie es funktioniert.
Zur Deaktivierung gibt es kein Python-Skript.
Was soll ich tun?Wie aktiviert/deaktiviert man einen virtualenv aus Python-Code?
Antwort
Von part of the VirtualEnv homepage.
Sie müssen den benutzerdefinierten Python-Interpreter zum Installieren von Bibliotheken verwenden. Aber Bibliotheken zu verwenden, müssen Sie nur sicher sein, dass der Pfad korrekt ist. Ein Skript ist verfügbar, um den Pfad zu korrigieren. Sie können die Umgebungskonfiguration wie:
activate_this = '/path/to/env/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))
Das klingt wie eine schlechte Idee. Sie versuchen, die Umgebung Ihres Skripts in diesem Skript zu ändern. Bitte erklären warum?
Können Sie es nicht hierarchisch machen? Verwenden Sie ein Skript, um verschiedene Skripts in verschiedenen virtualenv auszuführen.
Ich entwickle einen Test-Runner wie Tox (nur sehr anders in seiner Herangehensweise. Ich erfinde das Rad nicht neu), der die Testsuite in verschiedenen virtuellen Umgebungen unter Verwendung verschiedener Abhängigkeiten und Python-Interpeters ausführt. Dazu muss ich einen programmatischen Weg haben, um virtualenvs zu aktivieren und zu deaktivieren. –
in der Befehlszeile das Wort geben ‚deaktivieren‘
Aus Python-Code. Nicht von der Befehlszeile. –
Wenn Sie ein Programm außerhalb des virtualenv ausgeführt werden soll, nur Ihr System Python ausführbare Datei ausführen (zB /usr/bin/python
) statt der in der virtualenv.
- 1. Wie exportiert man virtualenv?
- 2. Wie installiert man GExiv2 auf einem virtualenv?
- 3. Wie benutzt man virtualenv in einem Ordner?
- 4. Wie man von virtualenv zum Buildout migriert?
- 5. Wie füge ich einen Pfad zu PYTHONPATH in virtualenv
- 6. Kopie komplette virtualenv auf einen anderen PC
- 7. einen Fehler, wenn für Kolben Installation virtualenv
- 8. Wie man einen Testfall aus MSTEST
- 9. Wie löst man einen Klickknopf aus?
- 10. Ansible ein virtualenv erstellen
- 11. Wie erhält man VirtualEnv TensorFlow, um in PyCharm zu arbeiten?
- 12. Wie debugge ich einen pyside Segmentierung Fehler in einem virtualenv?
- 13. Anaconda und VirtualEnv
- 14. Wie fügt man einen eigenen Index zu pip running in virtualenv hinzu?
- 15. Wie man Emacs einrichtet, um einen gegebenen Python virtualenv zu benutzen?
- 16. Wie installiert man MySQLdb in python2.7 Installation in virtualenv
- 17. Gibt es in Julia einen Python-artigen Virtualenv?
- 18. Django und virtualenv Ordner
- 19. Importfehler mit virtualenv
- 20. Wie installiere ichsible in virtualenv?
- 21. Python - Virtualenv, Python 3?
- 22. Virtualenv spezifische Pip-Konfigurationsdateien
- 23. Buildout und Virtualenv
- 24. Virtualenv Erstellungsfehler
- 25. Lua Äquivalent von virtualenv?
- 26. virtualenv easy_install gcc error
- 27. virtualenv in PowerShell?
- 28. virtualenv, mysql-python, pip: weiß jemand wie?
- 29. Virtualenv/pip Installationsprotokoll?
- 30. mache einige Module aus globalen Site-Paketen in virtualenv verfügbar
Ich verstehe nicht, was Sie mit Deaktivierung meinen. wenn du den virtualenv nicht willst .. einfach den ganzen ordner löschen. das ist alles – Surya
wenn wir Programme im Editor schreiben (zB Eclipse) .. da Python Pfad ist standardmäßig nicht der virtualenv .. so können Sie Pakete verwenden, die nicht in virtualenv sind. das ist es – Surya
@Surya Wenn du ein virtualenv deaktivierst, heißt das, dass du zum Haupt-Python-Interpeter zurückkehrst. –