Steps To Set Up Virtual Environment For Python On Windows

综合编程 2018-08-22 阅读原文

Introduction

Earlier, I wrote an article on
how to set up a Virtual Environment for Python development on Ubuntu . This article, as the title suggests, focuses on setting up a virtual environment on Windows. I’m using Windows 8, and everything we will do here should work on other versions of Windows as well.

Installing and Running Python

Installing Python, or any other software, for that matter, is fairly easy on Windows. You can download the Python installer from the Download Python page of the official website. The versions I will be using for this article, are 3.6 and 3.7. Please feel free to pick your own versions.

While installing Python 3.6, please make sure that you have selected the checkbox for "Add Python 3.6 to PATH". Also, note that I'm installing Python in "C:PythonPython36" directory, which would be useful later. So, I would recommend you to do the same, however, you are not bound to.

Once done, open up your PowerShell, type "python" and hit enter/return. You should see an output similar to mine. You can exit Python by using the quit() or exit() call.

It's time to install Python 3.7 in "C:PythonPython37" directory. Please ensure that you select the checkbox for "Add Python 3.7 to PATH". Once done, close the current PowerShell, and open it again. Then type "python --version" and hit enter/return. You should see an output similar to this one:

Notice how "python --version" returns the version to be "Python 3.7.0" and not "Python 3.6.6". The reason for this is the value of the PATH environment variable. To see the value you need to,

  • right click Computer and select Properties
  • select Advance System Settings
  • from the pop-up box select Advanced tab
  • select Environment Variables
  • select PATH and then Edit

You can now copy the value in your favorite text editor and look at it. Mine looks like the following.

C:PythonPython37Scripts;C:PythonPython37;C:PythonPython36Scripts;C:PythonPython36;    
//and few other values

When we execute the command "python" or "python --version", it looks into the "PATH" variable and finds Python 3.7 as the first match, it stops there and looks no further. Therefore, if we want to run "Python 3.6", we have to manually change the "PATH" variable or change the installation order which will, in turn, change the variable.

However, there is a way to run a specified version of Python, and we can do so by using the command "py -". Please refer to the image below.

Setting Virtual Environment

To set up a virtual environment, we first need to install the package virtualenv using pip. To do so, open up your PowerShell and execute the following commands.

// upgrade pip to its latest version  
python -m pip install --upgrade pip   
  
// install virtualenv  
pip install virtualenv  

If your requirement falls under any of the following categories,

  • have only one Python version installed
  • don't want to specify any Python version
  • want to use default Python version (check your version by running "python --version" on the command line)

Then, you can simply create your virtual environment using the "virtualenv venv" command, where "venv" is the environment name. However, if none of the above categories satisfies your requirement, then follow along as it's time to create your virtual environment using with Python 3.6.

// navigate to Desktop  
cd .Desktop  
  
// create a new directory 'project-36'  
mkdir project-36  
  
// change currenct directory to 'project-36'  
cd .project-36  
  
// create a virtual environment named 'venv', feel free to name it anything you like
virtualenv venv -p C:PythonPython36python.exe  

Notice the last command. With the attribute "-p" we have specified the Python version that we want our virtual environment to use. In our case, it's Python 3.6, which we had installed at "C:PythonPython36". If you installed it at a different location, please pass the complete path here.

If you want to use Python 3.7 instead, all you need is to change the installation path for Python in the last command. Just put in the path where you installed Python 3.7 and you are good.

Now, it's time to activate the environment, check the Python version and also list the default packages installed for us. To do so, execute the following commands and you should see a similar output as shown in the image that follows. The (venv) on the left shows that our virtual environment is active.

// activate the virtual environment 
.venvScriptsactivate

// check the python version
python --version

// list all packages installed by default
pip list

// deactivate the virtual environment
deactivate

Congratulations! You have successfully created your first virtual environment for Python. And, you are now all set to start your journey with Python development over Windows.

Summary

In this article, we successfully -

  • installed Python (different versions)
  • learned how to run specific Python version over command line
  • created virtual environments, running different versions of Python, using virtualenv package

If you are interested to learn more and set up your Python virtual environment on Ubuntu (or other Linux based system), do check out myprevious article where I walk you through each step in detail.

C-Sharpcorner

责编内容by:C-Sharpcorner阅读原文】。感谢您的支持!

您可能感兴趣的

5 Facts About Python I was idly browsing through The Economist the other day, and found an excellent primer to the Python programming langua...
《数据驱动安全:数据安全分析、可视化和仪表盘》一2.2.1理解Python数据分析和可视化生态系统... 本节书摘来异步社区《数据驱动安全:数据安全分析、可视化和仪表盘》一书中的第2章 ,第2.2.1节,杰·雅克布(Jay Jacobs)鲍布·鲁迪斯(Bob Rudis) 著 薛杰 王占一 张卓 胡开勇 蒋梦飏...
Getting started with Windows Store for Business With the new Windows Store for Business, organizations can make volume purchases of Windows apps. The Store for Bus...
Sending Cat Pictures Over The Phone 1-855-MEOW JAM: Sending Cat Pictures Over The Phone Via Space Age Technology Note!The text below was original...
Can too much logging affect the performance of the... For a web application written in python/Django, does logging volumn impact web performance? For Go, I can start a goro...