【Python】更新安装包到指定的版本(解决ImportError中版本不兼容的问题)

在运行过去的python文件时,我发现以前的文件无法运行了。原来是过去的安装包,运不动现在版本的文件了【心累】

就如上面图一样,我遇到了这个问题:

ImportError: Pandas requires version, '3.0.7’or newer of ‘openpyxl’(version '2.5.6’currently installed).

我遇到这个问题,是因为我之前就安装了 openpyxl 这个包,但是只有 2.5.6版本,而要运行我的程序则要用到3.0.7版本的,所以我需要更新我原有的openpyxl 包。

以下是一些更新的方法,我整理成要点,按照不同的需求可以自行查找:

1. 更新单个包到特定版本(已经安装好的包)

cmd的更新方法:

pip install --upgrade package==version

例:pip install –upgrade openpyxl==3.0.7

或者使用conda更新指定版本的包:

conda install package==version

例:conda install openpyxl=3.0.7

2. 安装特定版本的包(原先没有安装好包)

cmd的安装方法:

pip install package==version

例:pip install numpy==1.18.1

使用conda安装指定版本的包:

conda install package=version

例:conda install numpy=1.18.1

3. 更新多个包的指定版本:

由于我的程序需要更新的版本实在是太多了,版本如下:

如果要一个个去更新实在费时费力气,所以我使用了下面的方法

3.1:逐一指定每个包和版本

我们今天在pip install命令中指定多个包和它们对应的版本,格式如下:

pip install package1==version1 package2==version2 ...

例如,如果你想要将numpy更新到1.18.1版本,将pandas更新到1.0.5版本,你可以使用以下命令:

pip install numpy==1.18.1 pandas==1.0.5

这个适合于包不算很多的情况下,写起来比较容易;如果是比较多的包,建议用下面这种:

3.2:使用requirements文件

  1. 创建一个requirements文件:

首先,创建一个名为requirements.txt的文件,并在文件中列出所有需要安装的包及其指定的版本。每行一个包,格式如下:

package1==version1
package2==version2
……

例如,requirements.txt文件内容可能如下:

numpy==1.18.1
pandas==1.0.5
scikit-learn==0.23.2

  1. 使用cmd的命令执行requirements文件的内容:

在cmd中执行:

pip install -r requirements.txt

这个命令会读取requirements.txt文件,并安装或更新文件中列出的每个包到指定的版本。

PS: 如果不指定安装包的版本,只是更新升级所有的安装包,可以采用下面的方法:
【Python】把所有安装包都更新的方法

作者:翠花上酸菜

物联沃分享整理
物联沃-IOTWORD物联网 » 【Python】更新安装包到指定的版本(解决ImportError中版本不兼容的问题)

发表回复