windows中,创建/查看/删除虚拟环境,查询python版本号,安装 requirements.txt 依赖包,查看已安装的/更新 包,混合环境管理的建议
注意:
- 避免混合使用
pip
和conda
安装包,可能导致兼容性问题。- 建议在
conda
环境中优先使用conda
安装包,除非某个包只能通过pip
获得。- 若虚拟环境是通过
conda
创建的(即,在conda
环境中),优先使用conda
安装大型包(如pytorch)
,因为conda
能更好地处理依赖关系和兼容性问题。
建议:
- 环境一致:用
conda
创建和管理虚拟环境 -----> 建议尽量使用conda
安装包。(可以避免由于pip
和conda
的包管理方式不同而引起的兼容性问题。)- 兼容性:混合使用
pip
和conda
安装包可能会导致依赖关系冲突,特别是在处理像pytorch
这样的大型库时- 混合环境管理:如果必须使用
pip
安装某些conda
中无法获得的包,确保在安装前先使用conda
安装所有关键包,并确保它们没有冲突。
创建虚拟环境
以下,二选一即可
1. venv
为了避免依赖冲突,建议创建一个虚拟环境。
在项目目录中,打开cmd,并输入以下命令:
python -m venv myenv
#myenv是虚拟环境名字
激活虚拟环境
myenv\Scripts\activate
激活后,命令提示符前有‘(myenv)’标记、
2. conda
创建新环境:
conda create --name myenv python=3.11
myenv`是环境的名字,`python=3.11`是你想要的Python版本。
激活环境:
conda activate myenv
查看当前的虚拟环境
conda env list
带 * 号的是当前的虚拟环境
删除虚拟环境
1. 关闭虚拟环境:确保虚拟环境没有激活。如果你在命令提示符中看到虚拟环境的标记(例如 (myenv)
),你可以使用以下命令停用它:
deactivate
2. 删除 虚拟环境文件夹/目录:通过文件资源管理器(找到右键直接删除) 或 cmd删除虚拟环境的文件夹。
在cmd中删除,如下:
rmdir /s /q myenv
# myenv是虚拟环境文件夹的名称
# /s 删除目录及其所有子目录
# /q 安静模式,不会显示删除确认提示
查看python版本号
cmd中,输入python
import torch #当pytorch成功安装,即可导入
torch.cuda.is_available() #查询cuda是否可用
print(torch.cuda.device_count()) #查看可用的cuda数量
print(torch.version.cuda) #查看cuda的版本号
print(torch.__version__) #查torch版本号(← 两个下划线!!)
安装 requirements.txt 中的依赖包
# 使用pip命令
pip install -r requirements.txt
conda中没有完全等同的命令。
①可以 在 conda 环境中,仍使用 pip 来安装 requirements.txt
中的包。
②手动创建 environment.yml文件。即,
将 requirements.txt
文件转换为 conda
的 environment.yml
文件,然后使用 conda
创建环境或安装包。步骤如下图:
安装本地项目
pip install -e .
这是pip的功能 用于以可编辑模式安装本地项目,conda 本身没有直接对应的命令。可以在conda环境中,直接使用pip命令。(conda环境中允许使用pip安装包或项目。)
查看已安装的包
# 使用 conda 命令
conda list
# 使用 pip命令
pip list
更新包
conda update package_name
混合环境管理建议
在 conda
创建的虚拟环境中使用 pip
安装包通常不会引起冲突,但需要注意以下几点来避免潜在问题:
1. 依赖管理:
conda
和pip
的依赖管理不同:conda
专注于管理整个环境的依赖关系,它能够确保安装的所有包之间的兼容性。而pip
更侧重于单个包的安装,不会自动处理复杂的依赖关系。- 潜在冲突:如果你在同一个环境中混合使用
conda
和pip
安装包,可能会引发依赖冲突。例如,如果你通过pip
安装了一个依赖包,它可能会覆盖或更改conda
已经管理好的包版本,导致环境不稳定。
2. 推荐做法:
优先使用
conda
安装包:如果某个包可以通过conda
安装,最好使用conda
安装。这是因为conda
安装包时,会自动解决包与包之间的依赖问题。conda install numpy pandas matplotlib
使用
pip
安装conda
中不可用的包:在确保conda
已安装所有能用的包后,如果还有一些包只能通过pip
安装,你可以在这个阶段再使用pip
。pip install somepackage
3. 环境隔离:
- 避免混合依赖:尽量避免混合安装。将一个环境中的依赖管理方式保持一致(要么全用
conda
,要么全用pip
),以减少潜在的依赖冲突。- 创建独立的环境:如果你必须混合使用
conda
和pip
,建议创建独立的虚拟环境来测试和隔离不同的安装配置。
4. 更新包时的注意事项:
- 更新时小心:如果需要更新某个包,尽量使用与最初安装方式相同的工具。例如,如果最初通过
conda
安装了numpy
,那么也通过conda
来更新numpy
。
总结:在 conda
环境中使用 pip
安装包不会直接导致冲突,但要谨慎处理依赖关系,优先使用 conda
安装包,并在必要时使用 pip
安装特定的包。保持环境内的一致性和隔离性,是避免冲突的关键。
参考:
解决ModuleNotFoundError: No module named ‘torch的方法_modulenotfounderror: no module named 'torch-CSDN博客
torch对应的torchaudio版本查询(官网):Previous PyTorch Versions | PyTorch
Installing pre-built binaries — Torchaudio 2.4.0.dev20240628 documentation (pytorch.org)
PyTorch中torch、torchvision、torchaudio、torchtext版本对应关系_torch2.0.1对应的torchvision-CSDN博客检查pytorch是否安装成功、查看torch和cuda的版本_torch查看cuda版本-CSDN博客Windows下查看安装的PyTorch版本的两种方法_如何查看pytorch版本-CSDN博客