Python的pip包管理工具使用和cmd介绍

炙歌 2024-09-02 17:05:02 阅读 54

目录

前言CMDPython安装Python图标再次安装安装路径安装路径选择

Python文件解释器和编辑器py文件常见报错类型

库库是什么库的优点库的分类

pippip是什么使用pip下载库什么是镜像源为什么要用镜像源如何换源下载如何更换默认下载源pip常用命令(重要)‘pip’ 不是内部或外部命令,也不是可运行的程序或批处理文件。使用pip下载库失败查错步骤

导入库失败

前言

此教程面向零基础的python学习者,用通俗易懂口头语的方式帮助其解答一些关于python的问题。如有错误 欢迎指正。

CMD

在学习python的过程中,命令行的操作必不可少,因此需要了解cmd的基本知识。大部分人说的终端、命令行、cmd、cmd命令、命令提示符,其实都说的是这个:

Windows基础-cmd解释

按下 win + r(win键就是键盘上Windows图标那个键),呼出“运行”窗口,输入 cmd 并回车,即可进入 cmd 中。

cmd的使用很重要,因为python的 pip命令 就在cmd里执行。

Python安装

安装教程链接

Python图标

许多初学者在安装python程序之后疑惑桌面没有python图标(也就是没有创建桌面快捷方式),其实这是正常的,python并不会主动在桌面生成图标。我们只需要在cmd中输入 python -V 查看版本,出现版本即代表安装成功了。

cmd_python解释

再次安装

再次安装

安装路径

Python的安装路径中不能出现中文。但有些人的电脑用户名是中文的,选择默认安装后 安装路径中就会出现中文,路径中有中文不是百分百会出错的,但应尽量避免。

修改电脑用户名太过复杂且容易出问题,建议卸载python后重新安装到其他磁盘。

安装路径选择

在自定义选择安装路径时,一定要记住每个软件都要有独属于自己的文件夹。下图是python默认安装时的路径,路径为 C盘 > 用户 > 当前用户 > 应用程序数据 > 本地 > 程序 > python > python3.11版本。我们可以取 Programs(程序) 后面的路径来组成自定义的路径,比如选择安装到D盘,路径就是 D:\Python\Python311 或者 D:\Programs\Python\Python311

安装路径

Python文件

解释器和编辑器

首先我们要知道python是 解释型语言 。在python中,使用编辑器敲代码,用解释器运行代码。我们安装的python程序其实就是 解释器 ,它将代码翻译成机器语言让计算机运行。所以我们安装python之后不会出现图标也是正常的。拓展:编译型语言和解释型语言的区别

而我们敲代码的工具叫 编辑器。常用的编辑器有 IDLEvscodepycharm 等。其中 IDLE 是python自带的,在屏幕下方搜索框可以搜索 idle,如下图所示。但 IDLE 非常简洁,就是因为太简洁了所以并不适合新手,因此我们用第三方的编辑器,比如vscode、pycharm等。vscode上手难度低但面对大型项目时心有余而力不足,但对于新手来说是绰绰有余了。pycharm专业性强但上手难度高。

idle

若不能理解也没有关系,可以认为:我们写代码用 vscode 编写,用 python 运行(所以python不需要有桌面图标)。

py文件

Python源代码文件的后缀为 .py ,它是一种纯文本文件,我们可以使用编辑器(IDLE、vscode、pycharm)打开它,也可以用电脑自带的文本文档打开。当然我们也可以创建一个文本文件,然后把 .txt 后缀改成 .py 来创建python源文件 。

值得一提的是,后缀只是用来区分不同的编程语言,解释器(或者编译器)、编辑器、程序员会用后缀来辨别当前文件是哪种编程语言,因此更改后缀并不会改变文件的内部格式。

常见报错类型

学习代码必须学会看报错信息,这在编程中极为重要。

报错格式是 错误类型: 报错原因 ,再结合报错行具体分析报错原因。

遇到报错不要慌,调整心态,有报错是正常的。二十年老程序员写代码一样会报错。查看报错的提示,根据提示查看对应的代码进行修改。先上网查找下是否有类似的问题及解决方法。仔细对比老师的代码看有什么区别,一个字母不对就可能引发错误。虚心请教群里老师及其他同学。总结和记录这次遇到问题解决的思路。

模块导入错误

ModuleNotFoundError: No module named 'xpinyin'

出现于导入模块时报错。原因时没有安装该库,应先使用 pip 安装后再使用。若确认已经安装成功依然无法导入,可能是电脑里有多个python版本,安装的和使用的版本不一致。建议只留一个版本,其他的都卸载。(电脑设置 > 应用 里卸载)

语法错误

SyntaxError: invalid syntax

代码形式错误,特别常见于循环、判断语句后面忘记加冒号。使用了中文符号也会引发语法报错。括号不匹配:在使用括号时,要确保每个左括号都有相应的右括号,并且括号之间没有遗漏或多余的括号。引号不匹配:在使用引号时,要确保每个引号都有相应的关闭引号,并且引号之间没有遗漏或多余的引号。用特殊字符来命名也会引发语法错误:命名只能由字母、数字和下划线组成,第一个字符必须是字母或下划线,且区分大小写。使用保留字作为变量名:Python有一些保留字(又叫关键字),用于表示特定的语法结构和功能。不应该将保留字用作变量名,否则会导致SyntaxError。

缩进错误

IndentationError: unexpected indent

在python中用缩进表示代码块之间的层级关系,因此缩进极为重要,一定要避免不必要的缩进。当出现 IndentationError 类型的报错时请仔细检查缩进是否正确。

变量名错误

NameError:

访问的变量名不存在。比较常见的就是单词拼写错误,或者 因为判断等原因未能执行定义变量。

对象属性错误

AttributeError:

在访问对象的属性或方法时发生了错误。一般是访问了对象没有的属性或方法,或者去访问私有属性或方法。

(以上错误类型 很多错误点在使用 vscodepycharm 等编辑器时会直接指出,更加方便)

值错误

ValueError:

传给对象的参数类型不正确。例如:把字母转换成整数:int(“s”)。

索引错误

IndexError:

在使用索引访问序列(如列表、元组、字符串等)时发生的错误。当我们使用一个超出序列范围的索引时,就会引发IndexError异常。比如 定义:a=[1, 2, 3],打印:print(a[3]),就会引发IndexError异常

键错误

KeyError:

使用字典中不存在的键引发的错误。例如:定义一个字典 a = {“name”: “zs”},却打印年龄 print(a[“age”])。

类型错误

TypeError:

对不同类型的对象执行不支持的操作时,就会引发TypeError异常。例如:将字符串与整数相加、列表的索引用字符串 a[“1”]、尝试修改字符串的值。

文件未找到错误

FileNotFoundError: [Errno 2] No such file or directory: 'xxxxx'

在尝试打开或访问文件时找不到指定的文件。一般是路径或者文件名写错了(文件名需要把后缀也写上去),或者文件确实不存在。用 vscode 编辑代码时,涉及到路径和文件的代码一定要用工程模式打开,不然极易引发该错误。

文件解码错误

UnicodeDecodeError:

一般是文件本身的格式和指定的格式不匹配从而引发该错误。一般改成 encoding=‘utf-8’ 就能解决。

除数为0错误

ZeroDivisionError:

代码也要讲究数学运算逻辑,除数不能为0。

逻辑错误

人为原因。原因是 对于python语法和函数的含义未能理解,导致出现语句和逻辑上的错误。建议 先百度了解语法和函数的含义和用法,再一点点的分别去熟悉每个语法和函数,最后再一起使用。

自定义错误

在使用库时会经常遇到的错误,与以上错误都不一样。其实它们就属于自定义错误,是该库的作者自定义的错误类型。自定义错误也遵循望文生义的原则,请仔细阅读报错并修改代码。

python库(也可以叫 python包)。

库是什么

Python的库(Library)是指一系列预先编写好的、用于执行特定功能的代码集合。这些库包含了大量的函数、类、模块等,它们可以被Python开发者在编写自己的程序时直接调用,从而避免重复造轮子,提高开发效率。

听不懂?你可以这样理解:别人把已经写好的具体功能,整理分类成一个个文件或文件夹,你去网上下载你需要的文件,然后导入到你的代码里面,你就可以直接用别人写好的功能了。这个文件或文件夹就统称为库。

库的优点

(知道即可)

提高开发效率。因为别人已经把功能写好了,你拿来用就行了。丰富的功能支持。python官方已经收录了数十万的库,难以想象有多少功能。跨平台兼容性。Python库通常都具有良好的跨平台兼容性。开源和免费。大多数Python库都是开源的,这意味着开发者可以免费地使用和修改这些库。社区支持。Python拥有庞大的开发者社区,这些社区提供了大量的教程、文档和示例代码,帮助开发者更好地使用Python库。可扩展性。开发者可以根据自己的需要定制和扩展这些库。易于集成。可以与其他语言和工具进行无缝集成。例如,Python可以与C/C++、Java等语言进行交互,从而实现混合编程。

库的分类

python除去基本语法和内置函数外,大部分功能都在python库里。因此库的认识和学习是重中之重。

python库的分类普遍认为分三大类:

类别 介绍
标准库(Standard Library) Python自带的一系列库,包含了各种常用的功能,如系统操作(os库)、字符串处理(string库、re库)、网络编程(socket库)、时间日期处理(time库、datetime库)、随机数(random库)等。标准库中的模块是Python解释器的一部分,无需额外安装即可使用。
第三方库(Third-party Libraries) 由Python社区开发者编写的库,提供了更为广泛和专业的功能。这些库通常需要通过 pip 等包管理工具进行安装。常见的第三方库包括NumPy(用于科学计算和数据分析)、Pandas(数据处理和分析)、Matplotlib(数据可视化)、Django(Web开发框架)、Flask(轻量级Web开发框架)、TensorFlow和PyTorch(深度学习框架)等。
扩展模块(Extension Modules) 使用C、C++等语言编写的Python扩展模块,这些模块提供了Python标准库和第三方库无法直接实现的底层功能,如操作系统调用、硬件访问等。扩展模块需要编译为Python可以加载的二进制文件才能使用。该模块对于初学者来说不用关注。

pip

pip是什么

pip 是一个现代的,通用的 Python 包管理工具。提供了对 Python 包(主要是第三方包)的查找、下载、安装、卸载的功能。

(python中库和包都指一种东西,叫法不同而已)。

pip下载的第三方库不能更改下载路径,都会下载到python的安装路径下(其实是可以修改的,但是不建议新手修改,因此默认不修改)。

python3.11 版本为例,默认安装时在 C:\用户\你的用户名\AppData\Local\Programs\Python\Python311\Lib\site-packages 路径下。如果你的python安装路径不是默认路径,请自行查找安装路径下的 \Lib\site-packages

pip 已内置于 Python 3.4 和 2.7 及以上版本,其他版本需另行安装。

使用pip下载库

如果遇到 ‘pip’ 不是内部或外部命令,也不是可运行的程序或批处理文件。文章下面有修复操作。

打开 cmd(上文有教),不用额外操作,直接输入 pip下载命令: pip install 库名,例如下图,我们以安装flask库为例。

在这里插入图片描述

因为我已经安装过 flask库了,所以如下图所示(切换源下文有教)。

在这里插入图片描述

不过为了给大家演示安装过程,我先卸载flask库,卸载命令和安装命令类似:pip uninstall 库名 。install是英语安装的意思,uninstall是卸载的意思,是不是都非常直接明了。

输入:pip uninstall flask 并回车。

系统显示:Found existing installation: Flask 3.0.3(已找到现有安装 Flask 3.0.3版本),

Proceed (Y/n)?:是否继续的意思。y是继续,n是取消。

在这里插入图片描述

我们输入 y 并回车(不区分大小写)。系统显示:Successfully uninstalled Flask-3.0.3(成功卸载Flask3.0.3版本)。我们就卸载完成了。

在这里插入图片描述

然后我们重新再安装一次flask,如下图所示,

在这里插入图片描述

内容 含义
Looking in indexes: 网址 表示你是从哪个镜像源网址上下载的第三方库,如果没有这行就代表你是从官网下载的,官网的下载速度很慢。如果你等不及,你可以按 ctrl+z 终止下载,然后按照下文的教程更换默认下载源,换好之后再重新下载库。
Requirement already satisfied:库名 翻译为 “已满足要求”。当你下载一个第三方库时,这个库很大可能会需要其他的第三方库来支撑,其他的库就被称为该库的依赖库,pip会把所有需要的库都下载下来。比如只是下载一个flask库,但是flask的依赖库有 WerkzeugJinja2itsdangerous 等等,以 Werkzeug 库为例,Werkzeug>=3.0.0 代表该依赖库的版本不能低于 3.0.0,刚好我之前下过3.0.1版本的Werkzeug库,因此就显示 “已满足要求”,如果你没有这个库,它就会直接帮你下载。
Installing collected packages: 库名 正在安装,请耐心等待。如果是很大的库就要等比较久。
Successfully installed: 库名 成功安装,一般出现这个提示就表示安装完成了。

安装完成后我们可以使用 pip list 命令来查看我们安装好的第三方库,如下图所示,因为我已经安装了很多第三方库了,所以显示了很多。

在这里插入图片描述

名称 含义
Package 库名。一般来说库名是不会变的,也就是说你使用pip下载、卸载、在代码里用import导入时,用的库名都是一样的。比如pygame库(做2D游戏的库),下载命令是:pip install pygame,卸载命令是:pip uninstall pygame,导入代码是:import pygame。但是有极少数的库,下载命令和导入代码时的库名不一致,比如常见的pillow库(图像处理库),下载命令:pip install pillow,导入代码:import PIL,不过这种不一致的情况很少见,不必担心记不住。
Version 库的版本

如果你没有安装过第三方库,那应该很干净,例如下图这样,只有几个库或者没有库。

在这里插入图片描述

安装完成之后你就可以根据上文说的第三方库的下载路径去找到这个文件夹,如果你实在不知道你的python安装到哪的,请看这篇文章 看“验证python能否正常运行”章节,文章里告诉了你怎么查找python。

更简单的方法就是看下载路径,如下图,红框显示的就是flask的安装路径,是不是和上文说的是一样的。

在这里插入图片描述

如果你找不到 AppData 这个文件夹, 请根据下图把选项勾选上。如果你的电脑知识薄弱,把这篇科普看完对你很有帮助

win10点击上方的“查看”,勾选上“文件拓展名”和“隐藏的项目”。

在这里插入图片描述

win11点击“查看” - “显示”,勾选上“文件拓展名”和“隐藏的项目”。

在这里插入图片描述

下图就是下载的flask库。第一个文件夹包含了库的所有文件,包括Python代码、数据文件、编译的扩展等。然而,库的版本信息通常不会直接体现在文件夹名称中,因此就有了第二个带版本号的文件夹,这个文件夹不用管也不能删除。其他库也是同理。

在这里插入图片描述

我们再来下载pygame库,我已经下过了,可以看到pygame就不需要依赖库,只需要它自己本身一个库就够了。

在这里插入图片描述

找到安装路径,也可以看到 pygame文件夹 和 一个带版本号的pygame文件夹。

在这里插入图片描述

刚刚我们说过有极少数的库,下载命令和导入代码时的库名不一致,比如常见的pillow库(图像处理库),这是下载时的库名,

在这里插入图片描述

而这是安装好后的库,名称为 PIL。这就是为什么导入代码是 import PIL,因为安装好后的文件夹名就是 PIL,代码要跟文件夹名一致,不然代码就会找不到文件夹。

在这里插入图片描述

导入代码:

在这里插入图片描述

什么是镜像源

镜像源是指存放Python第三方库的服务器副本,用户可以通过镜像源下载Python第三方库。正常情况下,pip默认指向Python官网,从官方源下载第三方库,但由于各种原因(比如官方服务器在国外),官方源的下载速度很慢且不稳定。而镜像源则是将第三方库复制到各个区域的服务器上,提高下载速度。

常用镜像源有 清华阿里豆瓣网易 等等。

为什么要用镜像源

可以提高第三方库的下载速度。可以减轻官方源的负担。可以解决网络连接失败、下载失败问题。

如何换源下载

非常简单,就是在正常的下载命令后面添加 :-i 镜像源网址

完整命令:pip install 库名 -i 镜像源网址 。注意空格!!!很多人都会出错。

例如:

用豆瓣的镜像源下载最新版的flask库:pip install flask -i https://pypi.douban.com/simple/

用网易的镜像源下载指定版本的xlrd库:pip install xlrd==1.2.0 -i https://mirrors.163.com/pypi/simple/

常见镜像源地址

更具体教程看下文的:使用pip下载库失败查错步骤。

如何更换默认下载源

但每次我们下载库的时候都要多写命令去指定镜像源,这岂不是很麻烦。所以我们可以更换python的默认下载源,以后下载时就会默认从更换的镜像源下载,不用每次都去指定镜像源。

请在cmd命令行中分别执行以下两行命令来更换清华的默认下载源:

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

pip config set install.trusted-host pypi.tuna.tsinghua.edu.cn

执行效果如下:出现 Writing to xxxxxxxx 并且没有红色报错或者黄色警告就代表执行成功了。xxxxx代表的就是记录默认镜像源的文件所在位置。

在这里插入图片描述

我们可以去 C:\Users\你的用户名\AppData\Roaming\pip 路径下看看这份生成的 pip.ini 文件。

文件内容:

[global]

index-url = https://pypi.tuna.tsinghua.edu.cn/simple/

[install]

trusted-host = pypi.tuna.tsinghua.edu.cn

pip常用命令(重要)

命令 含义
pip list 查看所有pip安装的库
pip install 库名 安装库
pip install -U 库名 升级库(能用就别升级)
pip uninstall 库名 卸载库(一般不卸载)
pip show 库名 查看某个库的信息
pip cache purge 清除pip缓存。如果pip在安装第三方库的过程中卡住,可以按ctrl+c先退出,然后用此方法清除缓存之后重新下载
python -m pip install --upgrade pip 升级pip到最新版

‘pip’ 不是内部或外部命令,也不是可运行的程序或批处理文件。

在使用pip命令时若报错 ‘pip’ 不是内部或外部命令,也不是可运行的程序或批处理文件。 优先考虑安装python时没有勾选配置环境变量,具体教程请看「Python入门」安装Python程序超详细解析及教程。一定要把教程看完,而且安装完成后根据教程完完整整验证一遍,才能保证python安装无误。

若已配置好环境变量,那可能是pip未安装成功,请在cmd命令行中输入以下命令来安装pip。

python -m ensurepip --upgrade

造成该错误的原因可能有:

系统不兼容,需要手动安装。安装python时选择自定义安装,但未勾选安装pip。

若成功安装pip(不报错就安装成功了)后依旧报此错误,就执行升级pip的命令。升级后一般问题就解决了。

python -m pip install --upgrade pip

如果还不行,可以下载文章最上方的 get-pip.py(即 python-pip安装更新)文件,这个文件就是 py文件,就像平时运行python代码一样运行该文件,会帮助你自动下载最新版的pip。

使用pip下载库失败查错步骤

先检查自己的单词拼写和格式是否有误,例如 == 两边不能有空格。检查自己是否换过 默认下载源,若换过默认源就会在第一行显示 “Looking in indexes:镜像源网址” ,若没有就代表没有换过默认源。若没有更换过请先按照上文教程更换,更换之后一般能顺利下载。若换过默认源还不能下载,就使用临时换源命令来下载。该命令与默认下载 无区别 ,只是后面多个 -i 和 镜像源网址(==两边没有空格,-i 两边有空格,要检查清楚)。xxx 是要安装的库名称,xx.xx.xx 代表版本,不要 ==xx.xx.xx 就是默认下载最新版;后面的网址是镜像源地址,这是豆瓣的,也可以换其他的:

pip install xxx==xx.xx.xx -i https://pypi.douban.com/simple/

一次不行多试几次,多换几个镜像源试试。其他镜像源去这个网址以上都不行就升级pip,升级之后再下载。除非python版本较老,不然一般不是pip的问题。pip升级命令:

python -m pip install --upgrade pip

若还不行(可能性较小),就去python官网下载离线包进行离线安装或请求老师帮助。

导入库失败

使用 import 导入库失败(用vscode报错:无法解析导入),原因可能有:1. 库名写错了;2.根本没有下载库;3.下载的库不完整;4.下载库的python版本和使用的python版本不一致。

在这里插入图片描述

首先检查自己的库名是对的,特别是遇到上文说的库名不一致的情况(比如 pillow库,下载用的 pillow,写代码用的 PIL),请认真检查导入的库名。库名没有错误,就确认自己是下载好库的,我们这里以 pygame库为例,打开 cmd(上文有教),输入 pip list (上文有教),看看安装好的库中有没有 pygame,如下图。这个排序是按字母来排的,还是很好找的。

在这里插入图片描述

如果没有就代表没有下载安装这个库,请执行安装命令来安装 pygame(上文有教),安装命令:pip install pygame

在这里插入图片描述

安装完成后再使用 pip list 命令来看看是不是已经出现在了安装目录里(就像第2步的图片那样)。出现了就代表确定安装成功了,一般也不会有完整性问题。如果还是导入失败,可能是电脑安装了多个 python解释器版本,比如你将 pygame下载到了3.10版本,运行时却用的3.11版本,那肯定是不行的。还是需要用到 cmd,我们在cmd中输入 python -V( - 前面有空格,V大写),不会写就复制,然后按下回车键会显示当前用的python版本,如下图所示,我用的是3.11.6版本。你安装的库默认就是安装到这个版本里的。

python -V

在这里插入图片描述

编辑器我这里以 vscode为例,在vscode右下角会显示正在使用的python版本,如下图所示,我使用的python版本和cmd里面的版本是一致的,因此没问题。

在这里插入图片描述

如果你的不一样,就点击它。然后 vscode上方就会弹出选择 python解释器,如下图,选择与你cmd一致的版本就好了。

在这里插入图片描述

这里有vscode更详细的教程,编程小白想提升自己一定要看。



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。