Why is python saying I have "no module named venv"?

95,930

Solution 1

venv is a module introduced in python3

venv is New in version 3.3.

Solution 2

Since you are on Python 2, you need to execute using the virtualenv module that you installed.

First step, as you originally tried to do, but this time you specify the "virtualenv" module and the name of the virtualenv. In this case flask:

python -m virtualenv flask

Then you activate your virtualenv like this:

source flask/bin/activate

Then install flask with pip inside the virtualenv

pip install flask

If you want to deactivate your virtualenv, simply type:

deactivate

If running on Python 3, the venv command is built-in and you can simply do:

python3 -m venv flask

Note, depending on how your Python 3 is installed, your python execution command might differ. You could be running it as python3, python3.5, python3.6.

Solution 3

The venv is ony available in python 3 version. If you are using python 2 then try to use virtualenv instead of venv.

1. Install virtualenv,

python -m pip install virtualenv

2. Create a virtual environment named venv using virtualenv,

Python 2

python -m virtualenv venv

Python3

python -m venv venv

3. Activate virtual environment,

.\venv\Scripts\activate.bat

4. Install flask package,

pip install flask

Solution 4

If are you using "windows". Try it in "cmd" navigate in cmd to the folder you want to install venv and do:

python3 -m venv project_env

You can change the name of the project to.

Share:
95,930
Amanda
Author by

Amanda

Updated on February 03, 2022

Comments

  • Amanda
    Amanda over 2 years

    I installed virtual env with sudo pip install virtualenv but when I run python -m venv flask I'm still getting this: /usr/bin/python: No module named venv

    Versions, if that's relevant:

    pip 1.5.6 from /usr/lib/python2.7/dist-packages (python 2.7)
    Python 2.7.9
    

    what am I missing here?

  • Amanda
    Amanda about 3 years
    Pretty sure Windows doesn't have a sudo command! Either way, the answer to this 5yo question is in the accepted answer. venv is python3.
  • Pedro Grangeiro
    Pedro Grangeiro about 3 years
    I'm sorry @Amanda. I'm new on the stack overflow, and english is not my native language. But, i was talking about the error "no module named venv", which also occurred on my windows system, and I thought it would be useful if any user of windows gets here through google.
  • Amanda
    Amanda about 3 years
    Ahhh! I have been on this site a long time and every now and then a wildly old question will suddenly get new answers that don't even apply to the actual question. I bet a l lot of them are coming via a web search for the error message.