Python 3.3以上使用venv來代替了原來Python2使用的virtualenv建立虛拟環境。
1、為什麼建立虛拟環境
- 搭建獨立的python運作環境,不與系統或其他項目産生沖突
- 有助于包的管理和防止版本沖突
- 友善在git clone别人的代碼後,安裝requirements.txt的版本
- 删除解除安裝友善,直接删除對應的虛拟環境檔案夾即可
2、Ptyhon在Win/Linux下建立虛拟環境
方法一:自帶指令
- 進入檔案夾目錄
- python -m venv -h 可檢視幫助資訊
- 下面的
Linux運作指令行
$ 建立預設環境:python3 -m venv my_venv
$ 建立指定環境:python3.6 -m venv my_venv, python2 -m venv my_venv(添加到系統環境變量中)
$ 激活環境:. my_venv/bin/activate (. 或者 source )
$ 退出環境:deactivate
Windows系統運作cmd,使用 "py" Python 啟動器指令配合 "-m" 開關選項:
$ 建立環境:py -3 -m venv my_venv (或者python -m venv my_venv)
$ 建立指定環境:py -3.6 -m venv my_venv, py -3.7 -m venv my_venv (添加到系統環境變量中)
$ 激活環境:my_venv\Scripts\activate.bat
$ 退出環境:deactivate
執行後,會在目錄前方出現<my_venv>表明已進入虛拟環境
安裝項目:
$ pip install -r requirements.txt
方法二:Windows在PyCharm下建立虛拟環境
-
安裝并激活PyCharm
這個請自行安裝
官方位址:https://www.jetbrains.com/pycharm/
-
在PyCharm下建立虛拟環境
第一步:點選New Project
第二步:選擇下圖的New environment
第三步:點選create即可
pycharm會為新建立的項目自動建立一個虛拟環境
方法三:conda建立虛拟環境
anaconda中的常用操作
Linux下啟動其終端指令行
$ source ~/anaconda3/bin/activate root
$ anaconda-navigator
- 建立虛拟環境,conda create -n env_name python=3.6
- 同時安裝必要的包,conda create -n env_name numpy matplotlib python=3.6
- 激活虛拟環境
- Linux:source activate your_env_name(虛拟環境名稱)
- Windows:activate your_env_name(虛拟環境名稱)
- 退出虛拟環境:
- Linux:source deactivate your_env_name(虛拟環境名稱)
- Windows:deactivate your_env_name(虛拟環境名稱)
- 删除虛拟環境,conda remove -n your_env_name(虛拟環境名稱) --all
- 删除包使用指令,conda remove --name $your_env_name $package_name(包名)
conda常用指令
- 檢視已安裝的包,conda list
- 安裝包,conda install package_name(包名)
- 檢視目前存在的虛拟環境,conda env list 或 conda info -e
- 檢查更新目前conda,conda update conda
【參考】
1、venv官網說明:https://docs.python.org/3/library/venv.html
2、"venv"的詳細使用參數
usage: venv [-h] [--system-site-packages] [--symlinks] [--clear]
[--upgrade] [--without-pip] ENV_DIR [ENV_DIR ...]
Creates virtual Python environments in one or more target directories.
positional arguments:
ENV_DIR A directory to create the environment in.
optional arguments:
-h, --help show this help message and exit
--system-site-packages Give access to the global site-packages dir to the
virtual environment.
--symlinks Try to use symlinks rather than copies, when symlinks
are not the default for the platform.
--copies Try to use copies rather than symlinks, even when
symlinks are the default for the platform.
--clear Delete the environment directory if it already exists.
If not specified and the directory exists, an error is
raised.
--upgrade Upgrade the environment directory to use this version
of Python, assuming Python has been upgraded in-place.
--without-pip Skips installing or upgrading pip in the virtual
environment (pip is bootstrapped by default)