Problem mit virtualenv - kann nicht aktiviert werden


120

Ich habe eine virtuelle Umgebung um mein Projekt erstellt, aber wenn ich versuche, sie zu aktivieren, kann ich sie nicht aktivieren. Es könnte nur Syntax oder Ordner sein, aber ich bin gerade ratlos.

Sie können unten sehen, ich erstelle die virtuelle Umgebung und nenne sie venv. Alles sieht gut aus, dann versuche ich es durch Laufen zu aktivierensource venv/bin/activate

Ich denke, es hat möglicherweise nur mit meinem Systempfad zu tun, bin mir aber nicht sicher, worauf ich verweisen soll (ich weiß, wie man den Pfad bearbeitet). Ich bin auf Python 7 / Windows OS, Virtual Env 2.2.x.

Abhängigkeiten für virtualenv verarbeiten
Fertige Verarbeitungsabhängigkeiten für virtualenv abgeschlossen

c: \ testdjangoproj \ mysite> virtualenv --no-site-packages venv
Das Flag --no-site-packages ist veraltet. Es ist jetzt das Standardverhalten.
Verwenden des echten Präfixes 'C: \\ Programme (x86) \\ Python'
Neue ausführbare Python-Datei in venv \ Scripts \ python.exe
Die Datei venv \ Lib \ distutils \ distutils.cfg existiert mit unterschiedlichem Inhalt. nicht überschreiben
ting
Setuptools installieren ................. fertig.
Pip installieren ................... fertig.

c: \ testdjangoproj \ mysite> source venv / bin / enabled
'Quelle' wird nicht als interner oder externer Befehl erkannt.
bedienbares Programm oder Batch-Datei.

c: \ testdjangoproj \ mysite> source venv / bin / enabled
'Quelle' wird nicht als interner oder externer Befehl erkannt.
bedienbares Programm oder Batch-Datei.

c: \ testdjangoproj \ mysite> source mysite / bin / enabled
'Quelle' wird nicht als interner oder externer Befehl erkannt.
bedienbares Programm oder Batch-Datei.

c: \ testdjangoproj \ mysite>

Diese Dokumentation hilft sowohl für Posix- als
Blairg23

1
Der Quellbefehl wird in der Windows-Umgebung nicht ausgeführt.
Anupam Haldkar

Antworten:


327

source ist ein Shell-Befehl, der für Benutzer unter Linux (oder einem beliebigen Posix, aber was auch immer, nicht Windows) entwickelt wurde.

Unter Windows erstellt virtualenv eine Batchdatei, die Sie venv\Scripts\activatestattdessen ausführen sollten (gemäß der Dokumentation zu virtualenv im Aktivierungsskript ).

Bearbeiten: Der Trick hier für Windows besteht darin, die BAT-Erweiterung nicht anzugeben:

PS C: \ DEV \ aProject \ env \ Scripts> &. \ Activate
(env) PS C: \ DEV \ aProject \ env \ Scripts>


Klappt wunderbar !! Danke :)
Yasser Sinjab

Dies hilft auch bei virtualenvPosix- und Windoze-Systemen. virtualenv.pypa.io/en/stable/userguide
Blairg23

Ich sehe dieses "venv" -Verzeichnis nach der Installation von Python 2.7 unter Windows nicht. Rat? Ich bin zu Blairg23s Link gegangen, sehe aber kein "Aktivierungs" -Skript in meinem Python "Skript" -Verzeichnis.
Ryanwebjackson

12
oder einfachactivate
Marcin Rapacz

5
Ich lief, .\\venv\Scripts\activate.bataber der Befehl gibt nur Windows 10 weiter, ohne venv sysmbol (venv) C: \ myApp zu aktivieren . Was ist das Problem
Lutaaya Huzaifah Idris

13

Ich hatte auch das gleiche Problem auf meinem Windows 10-Computer. Welche Schritte ich versuchte, waren:

Gehen Sie zum andconda Terminal Schritt 1

pip3 install -U pip virtualenv

Schritt 2

virtualenv --system-site-packages -p python ./venv

oder

virtualenv --system-site-packages -p python3 ./venv

Schritt 3

.\venv\Scripts\activate

Sie können es über das Spinnenwerkzeug in Anaconda durch Eingabe überprüfen import tensorflow as tf


Hat dies das Problem für Sie behoben? Es ist nicht klar, ob Sie sagen "das funktioniert" oder "Ich habe das gleiche Problem"
Gerwitz

12

Ich hatte das gleiche Problem. Ich habe Python 2, Windows 10 und Git Bash verwendet. Es stellt sich heraus, dass Sie in Git Bash Folgendes verwenden müssen:

 source venv/Scripts/activate

2
Ich habe einen Windows-Computer und die Verwendung des Git Bash-Terminals war das einzige Terminal, das für mich funktioniert hat. (Die anderen Terminals, die ich zu verwenden versuchte, waren die Eingabeaufforderung und das VS-Code-Terminal.)
Gwen Au

11
  1. Zur Aktivierung können Sie in das venvVerzeichnis virtualenv von wechseln cd venv.

  2. Geben Sie dann unter Windows ein dir(unter Unix ls). Sie erhalten 5 Ordner include, Lib, Scripts, tclund 60

  3. .\Scripts\activateGeben Sie nun ein , um Ihre virtuelle Umgebung zu aktivieren venv.

Ihre Eingabeaufforderung ändert sich, um anzuzeigen, dass Sie jetzt in der virtuellen Umgebung arbeiten. Es wird ungefähr so ​​aussehen (venv)user@host:~/venv$.

Und dein venvist jetzt aktiviert.


In Windows 10.\Scripts\activate
A. Suliman

4

Geben Sie unter Windows im Terminal "C: \ Benutzer \ Sid \ venv \ FirstProject \ Scripts \ enabled" ohne Anführungszeichen ein. Geben Sie einfach den Speicherort Ihres Skriptordners in Ihrem Projekt an. Der Befehl lautet also location_of_the_Scripts_Folder \ enable.Geben Sie hier die Bildbeschreibung ein


2

Stellen Sie sicher, dass venv vorhanden ist, und befolgen Sie einfach die folgenden Befehle. Es funktioniert unter Windows 10.

Gehen Sie zu dem Pfad, in dem sich Ihre virtuellen Umgebungen befinden sollen:

> cd <my_venv_path>

Erstellen Sie die virtuelle Umgebung mit dem Namen "env":

> python -m venv env 

Fügen Sie den Pfad zur Git-Ignorierdatei hinzu (optional):

> echo env/ >> .gitignore

Aktivieren Sie die virtuelle Umgebung:

> .\env\Scripts\activate

# python -m venv venv / usr / bin / python: Kein Modul mit dem Namen venv # python3 -m venv venv # Quelle aktivieren -bash: aktivieren: Keine solche Datei oder kein solches Verzeichnis root @ t # Quelle venv / bin / aktivieren (venv) root @testdocker: ~ / r #
Vineeth Sivaraman

1

Ich habe verdammt virtualenvviel Zeit mit Windows mit Git Bash. Normalerweise spezifiziere ich die Python-Binärdatei explizit.

Wenn meine Umgebung in ist, .envrufe ich Python über ./.env/Scripts/python.exe …oder in einer Shebang-Zeile an #!./.env/Scripts/python.exe.

Beides unter der Annahme, dass Ihr Arbeitsverzeichnis Ihre virtualenv ( .env) enthält.


Außerdem verhalten sich einige Dinge nicht richtig. Husten _ansible_ Husten, wenn die virtuelle Umgebung nicht aktiviert ist. Wenn die Dinge also seltsam sind, müssen Sie die venv möglicherweise trotzdem aktivieren :(
ThorSummoner


1

Wenn Sie die 5 Ordner sehen ( Include, Lib, Scripts, tcl, pip-selfcheck) nach der Verwendung von virtualenv yourenvnameBefehl, wechseln Sie in den ScriptsOrdner in dem sich cmd und einfach verwenden „ aktivieren “ -Befehl.


1

Öffnen Sie den Ordner mit einer beliebigen Gitbash-Konsole. Zum Beispiel mit dem VisualCode- und Gitbash-Konsolenprogramm: 1) Installieren Sie Gitbash für Windows

2) mit VisualCode IDE mit der rechten klicken Sie auf das Projekt über geöffnet in Terminalkonsole Option

3) Suchen Sie in der Fensterkonsole in Visualcode nach einer Select-> Standard-Shell und ändern Sie diese für Gitbash

4) Jetzt ist Ihr Projekt mit der Bash-Konsole und dem richtigen Pfad geöffnet. Geben Sie die Quelle ./Scripts/activate ein

Übrigens : . mit Leerzeichen = Quelle

Geben Sie hier die Bildbeschreibung ein


0

Eine kleine Erinnerung, aber ich hatte meine Schrägstriche auf Win10 cmd falsch herum. Laut Python- Dokumentation lautet der Aktivierungsbefehl: C:\> <venv>\Scripts\activate.bat Wenn Sie Verzeichnisse durchsuchen, ist dies zcd .env/Scripts

Also habe ich mein Venv erstellt python -m venv --copies .envund aktiviert.env\Scripts\activate.bat


gemäß John
Flatness

0

Der Befehl source ist offiziell für die Unix- Betriebssystemfamilie vorgesehen und kann unter Windows grundsätzlich nicht verwendet werden. Stattdessen können Sie den venv\Scripts\activateBefehl verwenden, um Ihre virtuelle Umgebung zu aktivieren.

Es wurde ein Screenshot erstellt, wie der Befehl venv \ Scripts \ enabled ordnungsgemäß funktioniert


0

Wenn Sie Windows verwenden, verwenden Sie den Befehl "venv \ Scripts \ enabled" (ohne die Wortquelle), um die virtuelle Umgebung zu aktivieren. Wenn Sie PowerShell verwenden, müssen Sie möglicherweise Aktivieren aktivieren.


0

Wenn Sie ein Windows-Betriebssystem verwenden, verwenden Sie im Gitbash-Terminal den folgenden Befehl $ source venv / Scripts / enabled. Dies hilft Ihnen beim Betreten der virtuellen Umgebung.


0
  1. Öffnen Sie Ihr Projekt mit dem VS-Code-Editor.
  2. Ändern Sie die Standard-Shell in vs code terminal in git bash.

  3. Jetzt ist Ihr Projekt mit der Bash-Konsole und dem richtigen Pfad geöffnet. Geben Sie "source venv \ Scripts \ enabled" in Windows ein


0

Navigieren Sie zu Ihrem virtualenv-Ordner, z. B. Geben Sie ..\project1_env> dann ein

source scripts/activate

z.B ..\project1_env>source scripts/activate


0

Wenn ein Anfänger wie ich mehrere Python-Tutorials befolgt hat, sind jetzt mehrere Python-Versionen und / oder mehrere Versionen von pip / virtualenv / pipenv möglich ...

In diesem Fall helfen die aufgelisteten Antworten, obwohl viele richtig sind, möglicherweise nicht.

Das erste, was ich an Ihrer Stelle versuchen würde, ist Python zu deinstallieren und neu zu installieren und von dort aus fortzufahren.


0

In der Windows-Plattform

Sie sollten diesen Befehl mit dem angegebenen Pfad verwenden, in dem Sie eine virtuelle Umgebung installiert haben.

$ .\env\Scripts\activate 

Auf diese Weise sollten Sie dies unter Windows aktivieren können.


0
  1. Öffne deine Powershell als Admin
  2. Geben Sie "Set-ExecutionPolicy RemoteSigned -Force" ein
  3. Führen Sie "gpedit.msc" aus und gehen Sie zu> Administrative Vorlagen> Windows-Komponenten> Windows Powershell
  4. Suchen Sie nach "Skriptausführung aktivieren" und setzen Sie es auf "Aktiviert".
  5. Setzen Sie die Ausführungsanweisung auf "Alle zulassen".
  6. Anwenden
  7. Aktualisieren Sie Ihre Umgebung

0

Falls Sie Anaconda / Miniconda unter Windows verwenden - in Ihrer Eingabeaufforderung verwenden

conda activate <your-environmentname>

zB Peopleanalytics ist der Name meiner virtuellen Umgebung - heißt es

conda activate peopleanalytics

0

Wenn Sie Ihren Projekttyp bereits in Windows 10 cd

Scripts/activate

Das ist für mich in Ordnung:)

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.