环境配置的相关问题

一、shap安装踩坑

遇到错误:

A module that was compiled using NumPy 1.x cannot be run in NumPy 2.0.0 as it may crash. To support both 1.x and 2.x versions of NumPy, modules must be compiled with NumPy 2.0. Some module may need to rebuild instead e.g. with 'pybind11>=2.12'.
 If you are a user of the module, the easiest solution will be to downgrade to 'numpy<2' or try to upgrade the affected module. We expect that some modules will need time to support NumPy 2.

所以一开始的中心都在降numpy版本上,一直降不下来,怎么都显示Could not build wheels for numpy,后来发现是shap的问题。

这个包配置的环境非常苛刻,老是发生环境冲突(tensorflow,keras,pytorch,pandas,numpy),我就是和numpy的版本有冲突,怎么都解决不好,换了一个低版本的python就解决了,安装的是python3.6,然后建了个虚拟环境,解释器用的是python3.6,从global环境底下导了包过去,也用requirements一键装了一下,都挺顺利的,重点就是好好读readme文件,装一个低版本的python。

numpy包的安装

  • 离线安装
  • 在线安装
pip  uninstall numpy

Pip install numpy

二、虚拟环境创建以及外部包的导入具体过程

Q1:安装了新版本的python但cmd后只有旧版本的python

解决方法:在环境变量的系统变量下添加路径即可

Q2:在 PyCharm 中配置新的 Python 解释器

PyCharm-进入项目- “File” 菜单- “Settings”-“Project: [你的项目名]”- “Python Interpreter”-右上角的齿轮图标- “Add Interpreter…”- “System Interpreter”-选择刚刚安装的低版本 Python 的路径,例如 C:\Python38\python.exe 或 /usr/local/bin/python3.8点击 “OK”

此步note:你目前选择的 Python 解释器需要管理员权限才能安装包。为了避免权限问题,建议为每个项目创建一个虚拟环境。这样不仅可以避免权限问题,还可以确保不同项目之间的依赖不会发生冲突。

Q3:创建虚拟环境

1. 打开 PyCharm,进入项目。点击 “File” 菜单,选择 “Settings”。

2. 添加虚拟环境

设置--- “Project: [你的项目名]”--- “Python Interpreter”---右上角的齿轮图标,选择 “Add Interpreter…”----- “Virtualenv Environment”

3. 配置虚拟环境

Location:选择虚拟环境的存储路径。默认情况下,PyCharm 会在项目根目录下创建一个名为 venv 的文件夹。

Base interpreter:选择要基于哪个 Python 版本来创建虚拟环境。你可以选择你之前安装的低版本 Python 解释器。

4. 创建虚拟环境

确认所有设置无误后,点击 “OK”。

PyCharm 将自动创建虚拟环境并配置项目使用这个虚拟环境。

  • 5、激活python环境,安装所需要的包

venv\Scripts\activate

pip install -r requirements.txt

deactivate

6、新包的安装

(.venv) PS E:\lexin_test\lexin_test>pip install D:\package\model_dev_utils

Q4:查看是否创建了虚拟环境

打开 PyCharm,进入你的项目—— “File” 菜单—— “Settings”—— “Python Interpreter”

  • 在右侧的解释器列表中,你可以看到当前项目所使用的 Python 解释器。如果解释器路径中包含 venv 或类似的虚拟环境名称,那么该项目已经创建了虚拟环境。

 三、Seaborn报错

ModuleNotFoundError: No module named 'seaborn.external.six.moves'

解决方法:

这个错误是由于在Seaborn库的新版本中移除了对six库的依赖导致的。可以安装一个较旧的版本的Seaborn,将from .external.six.moves import range这一行替换为from six.moves import range,或者更新Seaborn到最新版本,看看是否有已经修复了这个问题的版本可用

pip install --upgrade seaborn

你可能感兴趣的:(python)