---
# System prepended metadata

title: Python3 虛擬環境
tags: [Python]

---

# Python3 虛擬環境
###### tags: `Python`
> 資料來源：https://developer.mozilla.org/zh-TW/docs/Learn/Server-side/Django/development_environment

---

我們將用於創建虛擬環境的庫是 virtualenvwrapper（Linux和macOS X）和 virtualenvwrapper-win （Windows），後者又使用 virtualenv工具。包裝工具為所有平台上的接口管理創建了一致的界面。

## Ubuntu虛擬環境設置
安裝Python和pip之後，你可以安裝 virtualenvwrapper（包括virtualenv）。可在此處找到官方安裝指南，或按照以下說明操作。

使用pip3安裝該工具：
> sudo pip3 install virtualenvwrapper

然後將以下行添加到shell啟動文件的末尾（這是主目錄中的隱藏文件名.bashrc）。這些設置了虛擬環境應該存在的位置，開發項目目錄的位置以及使用此軟件包安裝的腳本的位置：
```shell=
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS=' -p /usr/bin/python3 '
export PROJECT_HOME=$HOME/Devel
source /usr/local/bin/virtualenvwrapper.sh
```

> 注意: VIRTUALENVWRAPPER_PYTHON 和 VIRTUALENVWRAPPER_VIRTUALENV_ARGS 變量指向Python3的正常安裝位置，source /usr/local/bin/virtualenvwrapper.sh指向virtualenvwrapper.sh腳本的正常位置。如果virtualenv在測試時不起作用，那麼要檢查的一件事是Python和腳本位於預期的位置（然後適當地更改啟動文件）。
> 
> 您可以使用which virtualenvwrapper.sh 和 which python3.的命令找到系統的正確位置。

然後在終端中運行以下命令重新加載啟動文件：

> source ~/.bashrc

此時您應該看到一堆腳本正在運行，如下所示：
> virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/premkproject
> virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/postmkproject
> ...
> virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/preactivate
> virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/postactivate
> virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/get_env_details

現在，您可以使用mkvirtualenv命令創建新的虛擬環境。

## Windows 10 虛擬環境設置
安裝virtualenvwrapper-win比設置virtualenvwrapper更簡單，因為您不需要配置工具存放虛擬環境信息的位置（有默認值）。您需要做的就是，在命令提示符中運行以下命令：

> pip3 install virtualenvwrapper-win

現在，您可以使用mkvirtualenv命令創建新的虛擬環境

## 創建虛擬環境

一旦你安裝了virtualenvwrapper或virtualenvwrapper-win，那麼在所有平台上使用虛擬環境都非常相似。

現在，您可以使用mkvirtualenv命令創建新的虛擬環境。當此命令運行時，您將看到正在設置的環境（您看到的是略微特定於平台的）。當命令完成時，新的虛擬環境，將處於活動狀態 - 您可以看到這一點，因為提示的開頭，將是括號中環境的名稱（如下所示）。

```shell=
$ mkvirtualenv my_django_environment

Running virtualenv with interpreter /usr/bin/python3
...
virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/t_env7/bin/get_env_details
(my_django_environment) ubuntu@ubuntu:~$
```

## 使用虛擬環境

您應該知道其他一些有用的命令（工具文檔中有更多，但這些是您經常使用的命令）：

* deactivate — 退出當前的Python虛擬環境
* workon — 列出可用的虛擬環境
* workon name_of_environment — 激活指定的Python虛擬環境
* rmvirtualenv name_of_environment — 刪除指定的環境