ปัญหาเกี่ยวกับ Virtualenv - ไม่สามารถเปิดใช้งานได้


124

ฉันสร้าง Virtualenv รอบ ๆ โครงการของฉัน แต่เมื่อฉันพยายามเปิดใช้งานฉันไม่สามารถทำได้ อาจเป็นเพียงไวยากรณ์หรือตำแหน่งโฟลเดอร์ แต่ตอนนี้ฉันนิ่งงัน

คุณสามารถดูด้านล่างฉันสร้าง Virtualenv และเรียกมันว่า venv ทุกอย่างดูดีจากนั้นฉันพยายามเปิดใช้งานโดยเรียกใช้source venv/bin/activate

ฉันคิดว่ามันอาจเกี่ยวข้องกับเส้นทางระบบของฉัน แต่ไม่แน่ใจว่าจะชี้ไปที่อะไร (ฉันรู้วิธีแก้ไขเส้นทาง) ฉันใช้ python 7 / windows os, virtual env 2.2.x

การประมวลผลการอ้างอิงสำหรับ Virtualenv
การอ้างอิงการประมวลผลเสร็จสิ้นสำหรับ Virtualenv

c: \ testdjangoproj \ mysite> Virtualenv - ไม่มีไซต์แพ็คเกจ venv
แฟล็ก --no-site-Packages เลิกใช้งานแล้ว ตอนนี้เป็นพฤติกรรมเริ่มต้น
ใช้คำนำหน้าจริง 'C: \\ Program Files (x86) \\ Python'
Python ใหม่ที่เรียกใช้งานได้ใน venv \ Scripts \ python.exe
ไฟล์ venv \ Lib \ distutils \ distutils.cfg มีเนื้อหาที่แตกต่างกัน ไม่เกินจริง
การใช้งาน
ติดตั้ง setuptools ................. เสร็จแล้ว
ติดตั้ง pip ................... เสร็จแล้ว.

c: \ testdjangoproj \ mysite> แหล่ง venv / bin / เปิดใช้งาน
'แหล่งที่มา' ไม่ได้รับการยอมรับว่าเป็นคำสั่งภายในหรือภายนอก
โปรแกรมที่ใช้งานได้หรือไฟล์แบตช์

c: \ testdjangoproj \ mysite> แหล่ง venv / bin / เปิดใช้งาน
'แหล่งที่มา' ไม่ได้รับการยอมรับว่าเป็นคำสั่งภายในหรือภายนอก
โปรแกรมที่ใช้งานได้หรือไฟล์แบตช์

c: \ testdjangoproj \ mysite> ต้นทาง mysite / bin / เปิดใช้งาน
'แหล่งที่มา' ไม่ได้รับการยอมรับว่าเป็นคำสั่งภายในหรือภายนอก
โปรแกรมที่ใช้งานได้หรือไฟล์แบตช์

C: \ testdjangoproj \ mysite>

เอกสารนี้จริงๆช่วยออกมาสำหรับทั้ง Posix และ Windows ระบบ: virtualenv.pypa.io/en/stable/userguide
Blairg23

2
คำสั่ง Source จะไม่ทำงานในสภาพแวดล้อม windows
Anupam Haldkar

คำตอบ:


334

source เป็นคำสั่งเชลล์ที่ออกแบบมาสำหรับผู้ใช้ที่ทำงานบน Linux (หรือ Posix ใด ๆ แต่ไม่ว่าอะไรก็ตามที่ไม่ใช่ Windows)

ใน Windows Virtualenv จะสร้างไฟล์แบตช์ดังนั้นคุณควรเรียกใช้venv\Scripts\activateแทน (ตามเอกสารประกอบ Virtualenv บนสคริปต์เปิดใช้งาน )

แก้ไข: เคล็ดลับสำหรับ Windows ไม่ได้ระบุส่วนขยาย BAT:

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


ใช้งานได้อย่างมีเสน่ห์ !! ขอบคุณ :)
Yasser Sinjab

นอกจากนี้ยังช่วยvirtualenvในระบบ Posix และ Windoze virtualenv.pypa.io/en/stable/userguide
Blairg23

ฉันไม่เห็นไดเร็กทอรี "venv" นี้หลังจากติดตั้ง Python 2.7 บน Windows แนะนำ? ฉันไปที่ลิงค์ของ Blairg23 แต่ไม่เห็นสคริปต์ "เปิดใช้งาน" ในไดเร็กทอรี "Scripts" ของ Python
ryanwebjackson

12
หรือเพียงแค่activate
Marcin Rapacz

5
i วิ่ง.\\venv\Scripts\activate.batแต่คำสั่งเพียงผ่านบน Windows 10 โดยไม่ต้อง actiavting venv sysmbol (venv) C: ปัญหาคืออะไร
Lutaaya Huzaifah Idris

14

ฉันยังประสบปัญหาเดียวกันในเครื่อง Windows 10 ของฉัน สิ่งที่ฉันลองทำคือ:

ไปที่เทอร์มินอล andconda ขั้นตอนที่ 1

pip3 install -U pip virtualenv

ขั้นตอนที่ 2

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

หรือ

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

ขั้นตอนที่ 3

.\venv\Scripts\activate

คุณสามารถตรวจสอบผ่านเครื่องมือแมงมุมในอนาคอนดาโดยพิมพ์ import tensorflow as tf


วิธีนี้ช่วยแก้ปัญหาให้คุณได้หรือไม่ ไม่ชัดเจนว่าคุณกำลังพูดว่า "ได้ผล" หรือ "ฉันมีปัญหาเดียวกัน"
gerwitz

12

ผมมีปัญหาเหมือนกัน. ฉันใช้ Python 2, Windows 10 และ Git Bash ปรากฎใน Git Bash ที่คุณต้องใช้:

 source venv/Scripts/activate

2
ฉันมีคอมพิวเตอร์ Windows และใช้เทอร์มินัล Git Bash เป็นเทอร์มินัลเดียวที่ใช้ได้กับฉัน (เทอร์มินัลอื่น ๆ ที่ฉันพยายามใช้คือ Command Prompt และ VS Code terminal)
Gwen Au

12
  1. สำหรับการเปิดใช้งานคุณสามารถไปที่venvไดเรกทอรี virtualenv cd venvของคุณโดย

  2. จากนั้นบน Windows พิมพ์dir(บน unix พิมพ์ls) คุณจะได้รับ 5 โฟลเดอร์include, Lib, Scripts, tclและ 60

  3. ตอนนี้พิมพ์.\Scripts\activateเพื่อเปิดใช้งาน venvvirtualenv

ข้อความแจ้งของคุณจะเปลี่ยนเพื่อระบุว่าคุณกำลังดำเนินการในสภาพแวดล้อมเสมือนจริง (venv)user@host:~/venv$ก็จะมีลักษณะบางอย่างเช่นนี้

และของคุณvenvเปิดใช้งานแล้ว


ใน Windows10.\Scripts\activate
A. Suliman

5

สำหรับ Windows ให้พิมพ์ "C: \ Users \ Sid \ venv \ FirstProject \ Scripts \ enable" ในเทอร์มินัลโดยไม่มีเครื่องหมายอัญประกาศ เพียงระบุตำแหน่งของโฟลเดอร์ Scripts ในโปรเจ็กต์ของคุณ ดังนั้นคำสั่งจะเป็น location_of_the_Scripts_Folder \ enableใส่คำอธิบายภาพที่นี่


2

ตรวจสอบให้แน่ใจว่ามี venv อยู่ที่นั่นและทำตามคำสั่งด้านล่าง ใช้งานได้ใน Windows 10

ไปที่เส้นทางที่คุณต้องการให้สภาพแวดล้อมเสมือนจริงของคุณอยู่:

> cd <my_venv_path>

สร้างสภาพแวดล้อมเสมือนชื่อ "env":

> python -m venv env 

เพิ่มเส้นทางไปยังไฟล์ git ไม่สนใจ (ทางเลือก):

> echo env/ >> .gitignore

เปิดใช้งาน env เสมือน:

> .\env\Scripts\activate

# python -m venv venv / usr / bin / python: ไม่มีโมดูลชื่อ venv # python3 -m venv venv # source enable -bash: enable: ไม่มีไฟล์หรือไดเร็กทอรี root @ t # source venv / bin / enable (venv) root @testdocker: ~ / r #
Vineeth sivaraman

1

ฉันมีช่วงเวลาหนึ่งที่ใช้virtualenvกับ windows ด้วย git bash ฉันมักจะระบุไบนารี python อย่างชัดเจน

หากสภาพแวดล้อมของฉันอยู่ในบอกว่า.envฉันจะเรียกงูหลามผ่าน./.env/Scripts/python.exe …หรือเป็นเส้น shebang #!./.env/Scripts/python.exe;

ทั้งสองสมมติว่าไดเรกทอรีการทำงานของคุณมี Virtualenv ( .env) ของคุณ


นอกจากนี้บางสิ่งก็ไม่ทำงานอย่างถูกต้องไอ _ansible_ ไอเมื่อไม่ได้เปิดใช้งานVirtualenvดังนั้นหากสิ่งต่างๆแปลก ๆ คุณอาจต้องเปิดใช้งาน venv ต่อไป :(
ThorSummoner


1

ถ้าคุณเห็น 5 โฟลเดอร์ ( Include, Lib, Scripts, tcl, pip-selfcheck) หลังจากใช้virtualenv yourenvnameคำสั่งเปลี่ยนไดเรกทอรีไปยังScriptsโฟลเดอร์ใน cmd ตัวเองและเพียงแค่ใช้ " เปิดใช้งานคำสั่ง"


1

เปิดโฟลเดอร์ด้วยคอนโซล gitbash ตัวอย่างเช่นการใช้โปรแกรมคอนโซล visualCode และ Gitbash: 1) ติดตั้ง Gitbash สำหรับ windows

2) ใช้ VisualCode IDE คลิกขวาที่โครงการที่ เปิดในตัวเลือกคอนโซลเทอร์มินัล

3) บนคอนโซลหน้าต่างใน Visualcode มองหา Select-> เชลล์เริ่มต้นและเปลี่ยนเป็น Gitbash

4) ตอนนี้โปรเจ็กต์ของคุณเปิดอยู่ด้วย bash console และทางขวาใส่source ./Scripts/activate

BTW: ด้วยช่องว่าง = แหล่งที่มา

ใส่คำอธิบายภาพที่นี่


0

คำเตือนเล็กน้อย แต่ฉันใช้เครื่องหมายทับผิดวิธีใน Win10 cmd ตามเอกสาร python คำสั่งเปิดใช้งานคือ: C:\> <venv>\Scripts\activate.bat เมื่อคุณเรียกดูไดเรกทอรีเช่นcd .env/Scripts

ดังนั้นเพื่อสร้าง venv ของฉันฉันใช้python -m venv --copies .envและเปิดใช้งาน.env\Scripts\activate.bat


ตาม John Flatness
louisav

0

คำสั่งซอร์สเป็นทางการสำหรับระบบปฏิบัติการตระกูลUnixและคุณไม่สามารถใช้งานได้บน windows โดยทั่วไป คุณสามารถใช้venv\Scripts\activateคำสั่งเพื่อเปิดใช้งานสภาพแวดล้อมเสมือนของคุณแทนได้

สร้างภาพหน้าจอของการทำงานของคำสั่ง venv \ Scripts \ enable อย่างถูกต้อง


0

หากคุณใช้ Windows ให้ใช้คำสั่ง "venv \ Scripts \ enable" (โดยไม่มีแหล่งที่มาของคำ) เพื่อเปิดใช้งานสภาพแวดล้อมเสมือน หากคุณใช้ PowerShell คุณอาจต้องใช้ตัวพิมพ์ใหญ่เปิดใช้งาน


0

หากคุณใช้ windows OS จากนั้นในเทอร์มินัล Gitbash ให้ใช้คำสั่งต่อไปนี้ $ source venv / Scripts / enable สิ่งนี้จะช่วยให้คุณเข้าสู่สภาพแวดล้อมเสมือนจริง


0
  1. เปิดโครงการของคุณโดยใช้ VS code editor
  2. เปลี่ยนเชลล์เริ่มต้นใน vs code terminal เป็น git bash

  3. ตอนนี้โปรเจ็กต์ของคุณเปิดอยู่ด้วย bash console และเส้นทางที่ถูกต้องใส่ "source venv \ Scripts \ enable" ใน Windows


0

ไปที่โฟลเดอร์ Virtualenv ของคุณเช่น..\project1_env> จากนั้นพิมพ์

source scripts/activate

เช่น ..\project1_env>source scripts/activate


0

หากผู้เริ่มต้นบางคนเช่นฉันได้ทำตามแบบฝึกหัด Python หลายรายการแล้วตอนนี้ก็มี Python หลายเวอร์ชันและ / หรือ pip / Virtualenv / pipenv หลายเวอร์ชัน ...

ในกรณีนี้คำตอบที่ระบุไว้ในขณะที่ถูกต้องหลายคำตอบอาจไม่ช่วยได้

สิ่งแรกที่ฉันจะลองแทนคุณคือถอนการติดตั้งและติดตั้ง Python ใหม่และไปจากที่นั่น


0

ในแพลตฟอร์ม Windows

คุณควรใช้คำสั่งนี้กับพา ธ ที่ระบุตำแหน่งที่คุณติดตั้งสภาพแวดล้อมเสมือน

$ .\env\Scripts\activate 

จากนี้คุณควรจะเปิดใช้งานสิ่งนี้บน windows ได้


0
  1. เปิด powershell ของคุณในฐานะผู้ดูแลระบบ
  2. ป้อน "Set-ExecutionPolicy RemoteSigned -Force
  3. เรียกใช้ "gpedit.msc" และไปที่> เทมเพลตการดูแลระบบ> ส่วนประกอบของ Windows> Windows Powershell
  4. มองหา "เปิดใช้งานการเรียกใช้สคริปต์" และตั้งค่าเป็น "เปิดใช้งาน"
  5. ตั้งค่าคำสั่งการดำเนินการเป็น "อนุญาตทั้งหมด"
  6. ใช้
  7. รีเฟรช env ของคุณ

0

ในกรณีที่คุณใช้ Anaconda / miniconda บน windows - ในพรอมต์คำสั่งของคุณให้ใช้

conda activate <your-environmentname>

เช่น peopleanalytics เป็นชื่อของสภาพแวดล้อมเสมือนของฉัน - คือพูด

conda activate peopleanalytics

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.