更新:
问的gpt,说
virtualenv是一个用于创建独立Python环境的工具,可以在不同的项目中使用不同的Python版本和库,从而避免了不同项目之间的依赖冲突。而conda是一种跨平台的包管理器,可以管理不同语言的包和依赖项,并提供了创建虚拟环境的功能。使用conda创建虚拟环境时,可以指定Python版本和需要安装的包列表,conda会自动下载和安装依赖项。在使用虚拟环境时,可以使用activate命令进入虚拟环境,使用deactivate命令退出虚拟环境。
需要注意的是,conda是一种全局的包管理器,安装的包会被放在conda的安装目录下,而不是像virtualenv那样在当前项目的文件夹中。如果需要在不同的项目中使用不同版本的包,建议使用conda创建虚拟环境。如果只需要在当前项目中使用独立的Python环境,virtualenv也是一种不错的选择。
virtualenv 是复制解释器
改用conda建立虚拟环境
conda create -n env_name list_of_packages
# -n 代表 name,env_name 是需要创建的环境名称,list of packages 列出在新环境中需要安装的工具包
例如,当安装了 Python3 版本的 Anaconda 后,默认的 root 环境自然是 Python3,如果还需要创建一个 Python 2 的环境来运行旧版本的 Python 代码,同时要安装 pandas 包,就执行以下命令:
conda create -n py2 python=2.7 pandas
此时,py2 环境中不仅安装了 pandas,还安装了 numpy 等一系列 packages,这就是使用 conda 的方便之处,它会自动为你安装相应的依赖包,而不需要你一个个手动安装。
conda activate env_name # 进入虚拟环境
conda deactivate # 退出虚拟环境
conda env remove -n env_name # 删除名为 env_name 的环境
conda env list # 显示所有的环境
# 将当前环境下的 package 信息存入名为 environment 的 YAML 文件中,用以分享代码运行环境
conda env export > environment.yaml
conda env create -f environment.yaml # 使用别人生成的yaml文件创建环境
更新前,用的virtualenv :
以下是在cmd里进行的
pip install virtualenv # 安装
virtualenv --help # 测试
virtualenv --version # 查看版本
# 建立第一个虚拟环境
cd [my_project] # 进入python项目位置,[my_project]就是路径,之后cmd每一行开头都会出现[my_project]路径,继续键入以下命令
virtualenv my_project_env # 创建虚拟环境
virtualenv -p /usr/bin/python2.7 my_project_env # 如果存在多个python解释器,可以选择指定其中一个创建虚拟环境
virtualenv --system-site-packages my_project_env # 如果想让虚拟环境使用全局环境里的第三方库,要在安装虚拟环境时加上参数--system-site-packages
my_project_env\Scripts\activate # 启动虚拟环境,下一行会出现 (my_project_env)[my_project]
source my_project_env\bin\activate # 或者用这个命令启动虚拟环境
pip install XXX # 在虚拟环境中安装XXX库
pip install XXX -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com # 通过aliyun镜像安装XXX库
pip install -r requirements.txt # 运行别人的python项目时,如果里面有requirements.txt文件,可以通过这个命令配置出和他一样的环境
pip freeze > requirements.txt # 创建一个 requirements.txt 文件
pip list # 查看已安装的库
deactivate # 退出虚拟环境
如果要卸载虚拟环境,直接把虚拟环境的文件夹删除即可