Python安装第三方库出错完美解决方法

news2024/11/18 3:38:47

错误

Could not find a version that satisfies the requirement PIL (from versions: none) ERROR: No matching distribution found for PIL

Try to run this command from the system terminal. Make sure that you use the correct version of 'pip' installed for your Python interpreter located at 'D:\PyCode\venv\Scripts\python.exe'.

原因

1.网速过慢导致下载出错
2.版本不兼容问题
3.安装内置库或名称错误

解决方法

1.网速问题导致出错

在没有做任何配置的情况下,国内下载第三方库的时候是特别缓慢的,有时下载速度甚至才10几kb/s,还可能会遇到下载到一半,突然跳出一大堆红色提示,然后下载失败的情况。

其实这是因为我们通过pip安装时默认是从 PyPI 官方服务器拉取并下载包,使用的是默认的国外镜像源即 https://pypi.org/simple ,网络连接较差,下载速度比较慢,经常会网络传输断开导致下载失败。

在这种情况下,可以选择更换为国内的镜像源,例如阿里云、豆瓣、清华大学等都提供了Python的镜像服务,利用这些国内的镜像,可以大大提高下载和安装包的速度。

Python 程序包镜像的国内源如下:

  1. 清华大学: https://pypi.tuna.tsinghua.edu.cn/simple/
  2. 豆瓣(douban): https://pypi.douban.com/simple/
  3. 阿里云: https://mirrors.aliyun.com/pypi/simple/
  4. 中国科技大学: https://pypi.mirrors.ustc.edu.cn/simple/
(1)使用国内镜像源安装

使用方法:pip install -i 镜像源 包名

比如我要安装requests库,则可以在Terminal控制台执行下面命令

pip install -i https://pypi.douban.com/simple requests 

这样下载,因为使用的是国内的源下载,速度和之前比完全不是一个级别的,简直飞快。

(2)修改系统默认镜像源

我们也可以直接修改默认的镜像源,比如将系统默认镜像源设置为清华源,在控制台输入下面命令

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

这样做之后就不用每次都要加上-i 镜像源 参数进行下载,通过 pip 安装 Python 包时,都将从设置的清华源下载,方便且高效。

2.版本兼容问题出错

错误提示:

 Could not find a version that satisfies the requirement time (from versions: none) Non-zero exit code (2) error occured when installing package pillow

建议的解决方案:

出现这个问题,首先查一下当前pip版本

pip -V

在这里插入图片描述
然后将pip更新到最新版本,执行下面命令

python -m pip install --upgrade pip

再尝试下载安装库,如果还是安装不上,则降低pip版本(比原来的版本低一些),看看问题是否能解决。

比如我要将pip版本降到 20.2.1 ,则在控制台中输入

python -m pip install pip==20.2.1 

若多次尝试还是无法安装,则只能去官方 PyPI 页面查看一下安装的库所需的python版本了,因为有可能是Python版本不兼容。

毕竟我遇到过安装tensorflow时就是这种情况,并且还被官方欺骗了,官网明明显示支持python 3.10,但实际安装时就报错,降低tensorflow版本还是最烦人的系统缺少依赖错误,安装各种Visual studio版本、各种dll文件花了半小时没解决,最后将python降为3.9,1秒安装成功 wtf!

3.安装内置库或名称错误

(1)要注意是否是Python内置库,有些人习惯性的先安装自己代码中需要使用到的库,一不小心就会出现安装Python内置库的问题,比如time、os、json等等库,这些内置库是不用自己再单独下载安装的。

(2)要注意安装的库名称是否正确。有些时候import的包名和我们安装时的会有不同,比如像图像处理的PIL库,目前安装的时候就不是pip install PIL安装,而是使用pip install pillow 进行安装

在这里插入图片描述
因为PIL一直没有更新和维护,当前大家用的都是后来出现的基于PIL的pillow 库,但为了兼容PIL,pillow导入时使用的名称仍然是 “PIL”。但这导致很多人安装时直接写成PIL导致安装出错。还有比如与图像有关的cv2库,安装的时候却使用的是pip install opencv-python 进行安装,因此大家一定要注意使用正确的名称安装。

4.在虚拟环境中安装

在我们有多个项目的情况下,可能之前项目A需要的requests库版本是2.25.2,而现在项目B需要2.28.2,此时又不好将其更新到2.28.2,因为会影响到项目A的运行,这时虚拟环境便派上用场了。

使用虚拟环境可以将各个项目的环境独立出来,互不干扰。下面说说虚拟环境的创建和使用,非常简单。

首先使用下面的命令来建立一个虚拟环境:

python -m venv my_env

这个命令会在当前目录下创建一个名为“my_env”的文件夹,这个文件夹就是我们的虚拟环境。我们也可以把 “my_env” 换成你需要的任何名称。

然后切换到虚拟环境,执行下面命令

my_env\Scripts\activate

如果是Linux使用的是

source my_env/bin/activate

执行这样的命令后,会发现命令行的提示字符前面多了个 “(my_env)”,这表示现在是在 “my_env” 的虚拟环境中。然后就可以正常使用pip安装库了,注意因为是独立环境所以项目用到的库要重新在虚拟环境装一遍,之前安装的都是在外部环境中。

当我们完成对虚拟环境的操作后,可以使用下面的命令退出虚拟环境:

deactivate

使用虚拟环境,我们可以为每个项目创建单独的环境,使用自己需要的包和版本,使得我们的项目更加清晰,便于管理,也避免了版本冲突的问题。当然也可以使用anaconda创建独立的环境,不过anaconda要单独先安装,这里我就不提了,大家自己去探索吧。

如果教程对你有帮助的话,可以关注我了解更多知识。







hwj会幸福

Python安装第三方库出错完美解决方法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1211116.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux:给openlab搭建web网站

httpd服务器建立综合练习 建立网站需求: 1.基于域名 www.openlab.com 可以访问网站内容为 welcome to openlab!!! 2.给该公司创建三个子界面分别显示学生信息,教学资料和缴费网站, (1)、基于 www.openlab.com/stud…

使用Pandas进行数据读写的简易教程

Pandas是一个功能强大且广泛使用的Python库。它提供了一种简单而灵活的方式来读取和写入各种数据格式,包括CSV、Excel、SQL数据库等。本文将介绍如何使用Pandas进行数据的读取和写入操作,帮助你快速上手并高效地处理数据。 一、安装和导入pandas 首先&…

Linux软硬链接

文章目录 🐋1. 建立软硬链接现象🐠2. 软硬链接🪸2.1 软链接🪸2.2 硬链接 🐦3. 应用场景🪹3.1 软链接应用场景🪹3.2 硬链接应用场景 🐋1. 建立软硬链接现象 我们这里给file.txt建立软…

CH12_处理继承关系

函数上移(Pull Up Method) 反向重构:函数下移(Push Down Method) class Employee {/*...*/} class Salesman extends Employee {get name() {/*...*/} } class Engineer extends Employee {get name() {/*...*/} }cla…

AI数字员工创新工作模式丨市女协走进实在智能,沉浸体验RPA Agent智能魅力

11月10日,杭州市女企业家协会组织走进副会长张军燕企业——杭州实在智能科技有限公司,开展“领跑AI时代,做先进企业”人工智能沙龙活动。 本次沙龙是一场真正关注最前沿AI大模型与RPA自动化技术、寻找企业确定性增长的科技盛宴,也…

《深入浅出.NET框架设计与实现》阅读笔记(四)

静态文件系统 通过ASP.NET Core 提供的静态文件模块和静态文件中间件,可以轻松的让应用程序拥有访问静态文件的功能,同时可以基于IFileProvider对象来自定义文件系统,如基于Redis做扩展文件系统 启动静态文件服务 在Program.cs 类中&#x…

Fedora Linux 39 正式版官宣 11 月 发布

导读Fedora Linux 39 正式版此前宣布将于 10 月底发布,不过这款 Linux 发行版面临了一些延期,今天开发团队声称,Fedora Linux 39 正式版将于 11 月 7 日发布。 过查询得知,在近日的 "Go / No-Go" 会议上,开…

国产企业级低代码开发哪个最好?这一款超好用

低代码开发平台(Low-code Development Platform)正在迅速崛起,成为未来软件技术发展的主导趋势。通过使用低代码开发平台,企业能够显著提高开发效率,降低对专业开发人员的依赖,并实现更快速的软件交付和使用…

【从删库到跑路】MySQL数据库 | 全局锁 | 表级锁 | 行级锁

文章目录 🌹简述🎄全局锁⭐数据备份🎈设置全局锁🎈对表进行备份🎈释放锁 🎄表级锁🛸表锁⭐读锁⭐写锁 🛸元数据锁🛸意向锁⭐意向共享锁⭐意向排他锁 🎄行级锁…

某头部通信企业:SDLC+模糊测试,保障数实融合安全发展

某头部通信企业是全球领先的综合通信信息解决方案提供商,为全球电信运营商、政企客户和消费者提供创新的技术与产品解决方案。该企业持续关注核心技术攻关,深入打造系列化标杆项目和价值场景,加强数字化平台的推广应用,加快共建开…

蓝桥杯每日一题2023.11.15

题目描述 此处的快速排序有一个思想:以一个数x来判定这l至r区间的数的大小,如果a[l]小于x就与右侧的a[r]交换,最后x可以将这个区间的数进行一分为二。填空出就是已经将x移动到左部分和右部分之间,来确定二分的一个界点 答案&…

大模型在数据分析场景下的能力评测|进阶篇

做数据分析,什么大模型比较合适? 如何调优大模型,来更好地做数据计算和洞察分析? 如何降低整体成本,同时保障分析体验?10月25日,我们发布了数据分析场景下的大模型能力评测框架(点击…

NovelD: A Simple yet Effective Exploration Criterion论文笔记

NovelD:一种简单而有效的探索准则 1、Motivation 针对稀疏奖励环境下的智能体探索问题,许多工作中采用各种内在奖励(Intrinsic Reward)设计来指导困难探索环境中的探索 ,例如: ICM:基于前向动力学模型的好奇心驱动探索RND&…

外贸客户管理系统是什么?推荐的管理软件?

外贸客户管理系统哪个好用?海洋建站如何选管理系统? 外贸客户管理系统,是一款专为外贸企业设计的客户关系管理系统,旨在帮助外贸企业建立与维护客户关系,提高客户满意度和忠诚度,提升企业业绩。海洋建站将…

机器学习-搜索技术:从技术发展到应用实战的全面指南

在本文中,我们全面探讨了人工智能中搜索技术的发展,从基础算法如DFS和BFS,到高级搜索技术如CSP和优化问题的解决方案,进而探索了机器学习与搜索的融合,最后展望了未来的趋势和挑战,提供了对AI搜索技术深刻的…

属兔人连续两年不顺,运势低迷要化解

属兔人为人生性浪漫,有着美好憧憬, 与人相处的时候总是谦和待人,不会随便发脾气, 也不喜欢与人发生争执,不善于算计别人。 对于自己的另一半,是一个很温暖的人,为人细腻,并且懂得体谅…

ping: www.baidu.com: Name or service not known解决办法

解决服务器无法ping通外网问题 1、问题描述: 配置了网卡信息,发现还是无法访问外网,并报ping: www.baidu.com: Name or service not known信息 2、问题原因: 这就是外网没开通好 3、解决方法: 修改网卡文件&#xff…

KODExplorer中ace.js代码编辑器中自定义PHP提示片段

目录 KODExplorerace.js参考 KODExplorer 这是搭建云盘工具,该工具可以作为在线开发工具使用,其中使用了ace.js作为编辑器,这里主要讲解ace.js编辑器中如何自定义代码提示下载旧版本,再升级到新版本,直接下载新版本没…

【华为OD题库-022】阿里巴巴找黄金宝箱(IV)-java

题目 一贫如洗的椎夫阿里巴巴在去砍柴的路上,无意中发现了强盗集团的藏宝地,藏宝地有编号从0-N的子,每个箱子上面有一个数字,箱子排列成一个环,编号最大的箱子的下一个是编号为0的箱子。请输出每个箱子贴的数字之后的第…

wx小程序web-view uniapp H5

最近微信小程序对有视频播放的审核严,需要提供“文娱类资质”。而申请这个资质比较繁琐。所以我们在小程序上用web-view做跳转到H5,这是小程序关于web-view文档说明https://developers.weixin.qq.com/miniprogram/dev/component/web-view.html 开发前配…