Python库的安装问题

2023-05-16

Python库的安装问题

  • 所遇问题与解决方式
    • 安装版本
  • 1 Pycharm安装gdal库失败
    • 1.1 错误一:缺少VC++14环境
    • 1.2 错误二:安装VC++14.0后,再在pycharm中安装库依然报错
  • 2 pip 安装库
    • 2.1 Python程序库下载地址
    • 2.2 通过Pip下载程序包
    • 2.3 Pip命令下载程序包在Python和Pycharm中不通用的问题

所遇问题与解决方式

本人在安装Python库时遇到了许多报错,花了两天的时间找原因和解决方式,在阅读了许多前辈的教程贴之后、终于解决了问题。在此感谢知识共享的朋友们,另将过程记录以备后用。
:文中"程序库"、“程序包”、“安装包”、“模块”均指的是Python程序库。本人第一次写文章,如有不足之处敬请谅解、如有错误请评论区指出。欢迎朋友们一起交流学习!

安装版本

Python:3.8.10
Pycharm:2019.3.3
pip: 22.1(官方最新版)

1 Pycharm安装gdal库失败

1.1 错误一:缺少VC++14环境

错误原因提示:“Microsoft Visual C++ 14.0 is required”
解决办法
(1)安装 Microsoft Visual C++ Build Tools。可以根据网上教程进行安装。
(2)但在实际安装时总会出现“安装包丢失或损坏”的问题,建议直接下载离线包、在“请提供搜索包的位置”中直接选择 .msi 文件。(详见参考文章一)

1.2 错误二:安装VC++14.0后,再在pycharm中安装库依然报错

错误原因提示:“cl.exe 已退出,代码为 2 ” 或 “Non-zero exit code (2)”。
解决办法
(1)cl.exe 的问题在网上找了很多教程,尝试了一些都没有效果。
(2)感觉我的Pycharm是一种 " 我今天就是die,你也别想通过我安装成一个库! " 的坚决……所以只能从 pip 进行安装了。

2 pip 安装库

2.1 Python程序库下载地址

https://www.lfd.uci.edu/~gohlke/pythonlibs/

按字母顺序查找就好。以 gdal 库为例,第一个箭头处指的是 gdal 库的版本、越大越新;第二个箭头处指的是适配的Python的版本,如cp310即适用于Python3.10版本;最后一个箭头指适配的电脑系统 (64位/32位)。

gdal库

2.2 通过Pip下载程序包

2.2.1 首先保证已经安装了pip, 尽量更新到最新版本 以免某些库安装失败
检查方式:可以通过以下命令来判断

pip --version     # Python2.x 版本命令
pip3 --version    # Python3.x 版本命令

升级pip:

pip install -U pip

2.2.2 pip安装库命令
(1) 安装库:
在Python安装目录的文件夹路径中输入‘cmd’,回车,在弹窗中输入以下命令,直接安装。

pip install SomePackage
eg: pip install gdal 

(2) 卸载库:

pip uninstall SomePackage

(3) 升级库:

pip install --upgrade SomePackage

(4) 中阶命令:无需手动下载 .whl 文件。 使用镜像网站自动下载 .whl 文件并安装所需库:

pip install 模块名 -i https://pypi.tuna.tsinghua.edu.cn/simple     # pip 清华大学开源软件镜像站
pip install 模块名 -i http://pypi.douban.com/simple --trusted-host pypi.douban.com  # pip 豆瓣开源软件镜像站
eg:pip install gdal -i https://pypi.tuna.tsinghua.edu.cn/simple 

(5) 高阶命令:下载 模块名.whl 文件,并放置在Python安装目录下的“scripts”文件夹中,并在Python安装目录的文件夹路径中输入‘cmd’,回车,在弹窗中输入以下命令进行安装。

pip install 模块名.whl
eg:pip install GDAL-2.2.4-cp36-cp36m-win_amd64.whl

2.3 Pip命令下载程序包在Python和Pycharm中不通用的问题

我在Python安装路径下 通过pip命令安装库时,发现在Pycharm中并没有自动同步,即没有&不能使用。

我的Python安装路径:D:\Program Files\Python38\Scripts
Pycharm安装路径:D:\Program Files\JetBrains\PyCharm 2019.3.3

解决办法一:
参考这位博主:关于python在cmd下pip安装的包在pycharm不可用问题的解决方法
这样在Python安装路径下pip安装的库就在Pycharm中也能自动同步啦,可以使用。

解决办法二:
在Pycharm安装路径下再装一遍,这样装的库才会出现在Pycharm中。
不过个人还是推荐第一种,但是方法一每次只解决一个项目的问题,不同的项目要按照该方法都设置一遍才生效。

链接:
参考文章一.
参考文章二.
参考文章三.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python库的安装问题 的相关文章

  • Nuxt.js 概述 安装 目录结构说明

    什么是SEO SEO xff1a 搜索引擎优化 xff08 Search Engine Optimization xff09 通过各种技术 xff08 手段 xff09 来确保 xff0c 我们的Web内容被搜索引擎最大化收录 xff0c
  • Nuxt.js路由

    路由 路由概述 Nuxt js 依据 pages 目录结构自动生成 vue router 模块的路由配置 要在页面之间切换路由 xff0c 我们建议使用 nuxt link 标签 基础路由 自动生成基础路由规则 情况1 xff1a 访问路径
  • Nuxt.js 视图

    视图 默认模板 定制化默认的 html 模板 xff0c 只需要在应用根目录下创建一个 app html 的文件 默认模板 xff1a span class token doctype span class token punctuatio
  • Nuxt.js整合axios

    整合 axios 默认整合 在构建项目时 xff0c 如果选择axios组件 xff0c nuxt js将自动与axios进行整合 手动整合 步骤1 xff1a package json有axios的版本 34 dependencies 3
  • Vuex 状态树

    根模块数据操作 步骤一 xff1a 创建 store index js 添加一个 counter变量 xff0c 并可以继续累加操作 export const state 61 61 gt counter 0 export const mu
  • Nuxt.js查询学生列表案例

    查询所有的班级 xff1a 后端 父工程pom文件 lt xml version 61 34 1 0 34 encoding 61 34 UTF 8 34 gt lt project xmlns 61 34 http maven apach
  • 大数据面试题

    Hive理论知识汇总 1 Hive和数据库比较 Hive 和数据库除了拥有类似的查询语言 xff0c 再无类似之处 1 xff09 数据存储位置 Hive 存储在 HDFS 数据库将数据保存在块设备或者本地文件系统中 2 xff09 数据更
  • MyBatis Plus

    概述 简介 MyBatis Plus xff08 简称 MP xff09 是一个 MyBatis 的增强工具 xff0c 在 MyBatis 的基础上只做增强不做改变 xff0c 为简化开发 提高效率而生 特点 无侵入 xff1a 只做增强
  • MybatisPlus--QueryWrapper

    QueryWrapper wrapper介绍 Wrapper xff1a 条件构造抽象类 xff0c 最顶端父类 AbstractWrapper xff1a 用于查询条件封装 xff0c 生成 sql 的 where 条件 QueryWra
  • 大数据导论题库

    选择题 1 下面哪个程序负责 HDFS数据存储 C A NameNode B Jobtracker C Datanode D secondaryNameNode 2 HDfS 中的 block 默认保存几份 A A 3份 B 2 份 C 1
  • Oracle Linux7.8 下离线 一键静默安装Oracle12c

    目录 安装前的准备最小安装OracleLinux7 8 xff08 centos7 8一样 xff09 安装oracle需要的依赖包 准备Oracle安装包准备一键安装脚本 并执行脚本使用安装前配置 问题及解决方法 xff1a 错误码ORA
  • MybatisPlus-插件机制-乐观锁-逻辑删除-通用service

    插件机制 自动填充 项目中经常会遇到一些数据 xff0c 每次都使用相同的方式填充 xff0c 例如记录的创建时间 xff0c 更新时间等 我们可以使用MyBatis Plus的自动填充功能 xff0c 完成这些字段的赋值工作 原理 实现元
  • 畅购商城项目--(用户模块+用户注册【用户名占用】)

    搭建环境 4 1 1 后端web服务 xff1a changgou4 service web 修改pom xml文档 lt xml version 61 34 1 0 34 encoding 61 34 UTF 8 34 gt lt pro
  • Mysql对于列中存储键值对数据的查询

    对于键值对数据的查询 为了方便查看 xff0c 将其称之为A表 A表 xff1a 可以看到A表中的列有 id inquiry id data key data value date key列中的各个字段对应的data value中的各个数据
  • PathVariable注解的用法以及报错

    今天碰见个很奇怪的问题 xff0c 因为之前在学校没怎么用过 64 PathVariable这个注解 xff0c 但是postman测试时并没有请求到 xff0c 具体如下 接口就是一个简单的查询详情 xff0c 而当我请求postman的
  • 关于@PreAuthorize注解的使用场景

    作用 64 PreAuthorize 能够在执行方法之前进行权限的认证 xff0c 支持Spring EL表达式 xff0c 基于方法注解和权限解决方案 xff0c 并且只有当 64 EnableGlobalMethodSecurity p
  • 获取 当前时间的前五天凌晨0点的时间

    公司今天提到的需求是 xff1a 每日凌晨两点 xff0c 调用方法 xff0c 方法的内容是 xff1a 拉取当前时间的前五天的0点的消息聊天记录 在网上查了好久才找到 xff0c 现在奉上代码 xff1a span class toke
  • 查询 按照 指定时间的前一天的数据

    需求 xff1a 查询按照指定时间的前一天的数据 xff0c 举个例子 xff1a 传入2023 2 27 xff0c 需要获取到2023 2 26 的数据 xff0c 如果这一天没有数据 xff0c 那就需要往前找 xff0c 直到找不到
  • 关于limit的使用场景

    什么情况下使用 limit 1呢 xff1f 当我们写sql语句的时候需要进行全表扫描 xff0c 前提我们已经确认返回的结果只有一条数据的时候 xff0c 使用limit 1 xff0c 因为使用limit 1 之后 xff0c 在查询过
  • 【STM32多级界面】-LCD结构体多级图形界面框架

    STM32多级界面搭建 在实际的项目之中 xff0c 需要用单片机在LCD OLED中搭建一个3级的图形界面 本文的工程文件我将上次传到百度网盘 xff0c 链接在最后的部分 STM32多级界面搭建一 方案选择二 实现效果三 程序设计3 1

随机推荐