首页 > 解决方案 > Python 虚拟环境使用与安装不同的模块

问题描述

我有一个项目必须使用特定版本的模块,xlrd 1.2.0。

有了这个,我试图创建一个虚拟环境并让它使用 1.2.0,但是一旦我运行我的程序,它似乎并没有使用正确的模块。这就是我开始 venv 并安装 xlrd 1.2.0 的方式

conda create --name my_env_name python=3.9
conda activate my_env_name
>>> (my_env_name) C:\Users\currDir>      //looks good
 
(my_env_name) C:\Users\currDir> pip install xlrd==1.2.0
(my_env_name) C:\Users\currDir> pip show xlrd
>>> Name: xlrd, Version: 1.2.0, ...     //venv has proper version installed
 
(my_env_name) C:\Users\currDir> py MyProgram.py    //starting program

所以看起来安装了正确的版本,并且 venv 已启动并使用正确版本的 xlrd 运行,但是当我将以下内容放入我的 .py 文件并运行它时,程序使用了错误版本的 xlrd:

if __name__ == '__main__':
    print(xlrd.__version__)
>>> 2.0.1

为什么是这样?我是 venv 的半新手,所以任何帮助将不胜感激。

标签: pythonpipvirtualenvxlrdpython-venv

解决方案


推荐阅读