找回密码
 会员注册
查看: 26|回复: 0

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

[复制链接]

2万

主题

0

回帖

7万

积分

超级版主

积分
71625
发表于 2024-9-9 11:13:10 | 显示全部楼层 |阅读模式
目录前言CMDPython安装Python图标再次安装安装路径安装路径选择Python文件解释器和编辑器py文件常见报错类型库库是什么库的优点库的分类pippip是什么使用pip下载库什么是镜像源为什么要用镜像源如何换源下载如何更换默认下载源pip常用命令(重要)‘pip’不是内部或外部命令,也不是可运行的程序或批处理文件。使用pip下载库失败查错步骤导入库失败前言此教程面向零基础的python学习者,用通俗易懂口头语的方式帮助其解答一些关于python的问题。如有错误欢迎指正。CMD在学习python的过程中,命令行的操作必不可少,因此需要了解cmd的基本知识。大部分人说的终端、命令行、cmd、cmd命令、命令提示符,其实都说的是这个:按下win+r(win键就是键盘上Windows图标那个键),呼出“运行”窗口,输入cmd并回车,即可进入cmd中。cmd的使用很重要,因为python的pip命令就在cmd里执行。Python安装安装教程链接Python图标许多初学者在安装python程序之后疑惑桌面没有python图标(也就是没有创建桌面快捷方式),其实这是正常的,python并不会主动在桌面生成图标。我们只需要在cmd中输入python-V查看版本,出现版本即代表安装成功了。再次安装安装路径Python的安装路径中不能出现中文。但有些人的电脑用户名是中文的,选择默认安装后安装路径中就会出现中文,路径中有中文不是百分百会出错的,但应尽量避免。修改电脑用户名太过复杂且容易出问题,建议卸载python后重新安装到其他磁盘。安装路径选择在自定义选择安装路径时,一定要记住每个软件都要有独属于自己的文件夹。下图是python默认安装时的路径,路径为C盘>用户>当前用户>应用程序数据>本地>程序>python>python3.11版本。我们可以取Programs(程序)后面的路径来组成自定义的路径,比如选择安装到D盘,路径就是D:\Python\Python311或者D:\Programs\Python\Python311Python文件解释器和编辑器首先我们要知道python是解释型语言。在python中,使用编辑器敲代码,用解释器运行代码。我们安装的python程序其实就是解释器,它将代码翻译成机器语言让计算机运行。所以我们安装python之后不会出现图标也是正常的。拓展:编译型语言和解释型语言的区别而我们敲代码的工具叫编辑器。常用的编辑器有IDLE、vscode、pycharm等。其中IDLE是python自带的,在屏幕下方搜索框可以搜索idle,如下图所示。但IDLE非常简洁,就是因为太简洁了所以并不适合新手,因此我们用第三方的编辑器,比如vscode、pycharm等。vscode上手难度低但面对大型项目时心有余而力不足,但对于新手来说是绰绰有余了。pycharm专业性强但上手难度高。若不能理解也没有关系,可以认为:我们写代码用vscode编写,用python运行(所以python不需要有桌面图标)。py文件Python源代码文件的后缀为.py,它是一种纯文本文件,我们可以使用编辑器(IDLE、vscode、pycharm)打开它,也可以用电脑自带的文本文档打开。当然我们也可以创建一个文本文件,然后把.txt后缀改成.py来创建python源文件。值得一提的是,后缀只是用来区分不同的编程语言,解释器(或者编译器)、编辑器、程序员会用后缀来辨别当前文件是哪种编程语言,因此更改后缀并不会改变文件的内部格式。常见报错类型学习代码必须学会看报错信息,这在编程中极为重要。报错格式是错误类型:报错原因,再结合报错行具体分析报错原因。遇到报错不要慌,调整心态,有报错是正常的。二十年老程序员写代码一样会报错。查看报错的提示,根据提示查看对应的代码进行修改。先上网查找下是否有类似的问题及解决方法。仔细对比老师的代码看有什么区别,一个字母不对就可能引发错误。虚心请教群里老师及其他同学。总结和记录这次遇到问题解决的思路。模块导入错误ModuleNotFoundError:Nomodulenamed'xpinyin'1出现于导入模块时报错。原因时没有安装该库,应先使用pip安装后再使用。若确认已经安装成功依然无法导入,可能是电脑里有多个python版本,安装的和使用的版本不一致。建议只留一个版本,其他的都卸载。(电脑设置>应用里卸载)语法错误SyntaxError:invalidsyntax1代码形式错误,特别常见于循环、判断语句后面忘记加冒号。使用了中文符号也会引发语法报错。括号不匹配:在使用括号时,要确保每个左括号都有相应的右括号,并且括号之间没有遗漏或多余的括号。引号不匹配:在使用引号时,要确保每个引号都有相应的关闭引号,并且引号之间没有遗漏或多余的引号。用特殊字符来命名也会引发语法错误:命名只能由字母、数字和下划线组成,第一个字符必须是字母或下划线,且区分大小写。使用保留字作为变量名:Python有一些保留字(又叫关键字),用于表示特定的语法结构和功能。不应该将保留字用作变量名,否则会导致SyntaxError。缩进错误IndentationError:unexpectedindent1在python中用缩进表示代码块之间的层级关系,因此缩进极为重要,一定要避免不必要的缩进。当出现IndentationError类型的报错时请仔细检查缩进是否正确。变量名错误NameError:1访问的变量名不存在。比较常见的就是单词拼写错误,或者因为判断等原因未能执行定义变量。对象属性错误AttributeError:1在访问对象的属性或方法时发生了错误。一般是访问了对象没有的属性或方法,或者去访问私有属性或方法。(以上错误类型很多错误点在使用vscode、pycharm等编辑器时会直接指出,更加方便)值错误ValueError:1传给对象的参数类型不正确。例如:把字母转换成整数:int(“s”)。索引错误IndexError:1在使用索引访问序列(如列表、元组、字符串等)时发生的错误。当我们使用一个超出序列范围的索引时,就会引发IndexError异常。比如定义:a=[1,2,3],打印:print(a[3]),就会引发IndexError异常键错误KeyError:1使用字典中不存在的键引发的错误。例如:定义一个字典a={“name”:“zs”},却打印年龄print(a[“age”])。类型错误TypeError:1对不同类型的对象执行不支持的操作时,就会引发TypeError异常。例如:将字符串与整数相加、列表的索引用字符串a[“1”]、尝试修改字符串的值。文件未找到错误FileNotFoundError:[Errno2]Nosuchfileordirectory:'xxxxx'1在尝试打开或访问文件时找不到指定的文件。一般是路径或者文件名写错了(文件名需要把后缀也写上去),或者文件确实不存在。用vscode编辑代码时,涉及到路径和文件的代码一定要用工程模式打开,不然极易引发该错误。文件解码错误UnicodeDecodeError:1一般是文件本身的格式和指定的格式不匹配从而引发该错误。一般改成encoding=‘utf-8’就能解决。除数为0错误ZeroDivisionError:1代码也要讲究数学运算逻辑,除数不能为0。逻辑错误人为原因。原因是对于python语法和函数的含义未能理解,导致出现语句和逻辑上的错误。建议先百度了解语法和函数的含义和用法,再一点点的分别去熟悉每个语法和函数,最后再一起使用。自定义错误在使用库时会经常遇到的错误,与以上错误都不一样。其实它们就属于自定义错误,是该库的作者自定义的错误类型。自定义错误也遵循望文生义的原则,请仔细阅读报错并修改代码。库python库(也可以叫python包)。库是什么Python的库(Library)是指一系列预先编写好的、用于执行特定功能的代码集合。这些库包含了大量的函数、类、模块等,它们可以被Python开发者在编写自己的程序时直接调用,从而避免重复造轮子,提高开发效率。听不懂?你可以这样理解:别人把已经写好的具体功能,整理分类成一个个文件或文件夹,你去网上下载你需要的文件,然后导入到你的代码里面,你就可以直接用别人写好的功能了。这个文件或文件夹就统称为库。库的优点(知道即可)提高开发效率。因为别人已经把功能写好了,你拿来用就行了。丰富的功能支持。python官方已经收录了数十万的库,难以想象有多少功能。跨平台兼容性。Python库通常都具有良好的跨平台兼容性。开源和免费。大多数Python库都是开源的,这意味着开发者可以免费地使用和修改这些库。社区支持。Python拥有庞大的开发者社区,这些社区提供了大量的教程、文档和示例代码,帮助开发者更好地使用Python库。可扩展性。开发者可以根据自己的需要定制和扩展这些库。易于集成。可以与其他语言和工具进行无缝集成。例如,Python可以与C/C++、Java等语言进行交互,从而实现混合编程。库的分类python除去基本语法和内置函数外,大部分功能都在python库里。因此库的认识和学习是重中之重。python库的分类普遍认为分三大类:类别介绍标准库(StandardLibrary)Python自带的一系列库,包含了各种常用的功能,如系统操作(os库)、字符串处理(string库、re库)、网络编程(socket库)、时间日期处理(time库、datetime库)、随机数(random库)等。标准库中的模块是Python解释器的一部分,无需额外安装即可使用。第三方库(Third-partyLibraries)由Python社区开发者编写的库,提供了更为广泛和专业的功能。这些库通常需要通过pip等包管理工具进行安装。常见的第三方库包括NumPy(用于科学计算和数据分析)、Pandas(数据处理和分析)、Matplotlib(数据可视化)、Django(Web开发框架)、Flask(轻量级Web开发框架)、TensorFlow和PyTorch(深度学习框架)等。扩展模块(ExtensionModules)使用C、C++等语言编写的Python扩展模块,这些模块提供了Python标准库和第三方库无法直接实现的底层功能,如操作系统调用、硬件访问等。扩展模块需要编译为Python可以加载的二进制文件才能使用。该模块对于初学者来说不用关注。pippip是什么pip是一个现代的,通用的Python包管理工具。提供了对Python包(主要是第三方包)的查找、下载、安装、卸载的功能。(python中库和包都指一种东西,叫法不同而已)。pip下载的第三方库不能更改下载路径,都会下载到python的安装路径下(其实是可以修改的,但是不建议新手修改,因此默认不修改)。以python3.11版本为例,默认安装时在C:\用户\你的用户名\AppData\Local\Programs\Python\Python311\Lib\site-packages路径下。如果你的python安装路径不是默认路径,请自行查找安装路径下的\Lib\site-packages。pip已内置于Python3.4和2.7及以上版本,其他版本需另行安装。使用pip下载库如果遇到‘pip’不是内部或外部命令,也不是可运行的程序或批处理文件。文章下面有修复操作。打开cmd(上文有教),不用额外操作,直接输入pip下载命令:pipinstall库名,例如下图,我们以安装flask库为例。因为我已经安装过flask库了,所以如下图所示(切换源下文有教)。不过为了给大家演示安装过程,我先卸载flask库,卸载命令和安装命令类似:pipuninstall库名。install是英语安装的意思,uninstall是卸载的意思,是不是都非常直接明了。输入:pipuninstallflask并回车。系统显示:Foundexistinginstallation:Flask3.0.3(已找到现有安装Flask3.0.3版本),Proceed(Y/n)?:是否继续的意思。y是继续,n是取消。我们输入y并回车(不区分大小写)。系统显示:SuccessfullyuninstalledFlask-3.0.3(成功卸载Flask3.0.3版本)。我们就卸载完成了。然后我们重新再安装一次flask,如下图所示,内容含义Lookinginindexes:网址表示你是从哪个镜像源网址上下载的第三方库,如果没有这行就代表你是从官网下载的,官网的下载速度很慢。如果你等不及,你可以按ctrl+z终止下载,然后按照下文的教程更换默认下载源,换好之后再重新下载库。Requirementalreadysatisfied:库名翻译为“已满足要求”。当你下载一个第三方库时,这个库很大可能会需要其他的第三方库来支撑,其他的库就被称为该库的依赖库,pip会把所有需要的库都下载下来。比如只是下载一个flask库,但是flask的依赖库有Werkzeug、Jinja2、itsdangerous等等,以Werkzeug库为例,Werkzeug>=3.0.0代表该依赖库的版本不能低于3.0.0,刚好我之前下过3.0.1版本的Werkzeug库,因此就显示“已满足要求”,如果你没有这个库,它就会直接帮你下载。Installingcollectedpackages:库名正在安装,请耐心等待。如果是很大的库就要等比较久。Successfullyinstalled:库名成功安装,一般出现这个提示就表示安装完成了。安装完成后我们可以使用piplist命令来查看我们安装好的第三方库,如下图所示,因为我已经安装了很多第三方库了,所以显示了很多。名称含义Package库名。一般来说库名是不会变的,也就是说你使用pip下载、卸载、在代码里用import导入时,用的库名都是一样的。比如pygame库(做2D游戏的库),下载命令是:pipinstallpygame,卸载命令是:pipuninstallpygame,导入代码是:importpygame。但是有极少数的库,下载命令和导入代码时的库名不一致,比如常见的pillow库(图像处理库),下载命令:pipinstallpillow,导入代码:importPIL,不过这种不一致的情况很少见,不必担心记不住。Version库的版本如果你没有安装过第三方库,那应该很干净,例如下图这样,只有几个库或者没有库。安装完成之后你就可以根据上文说的第三方库的下载路径去找到这个文件夹,如果你实在不知道你的python安装到哪的,请看这篇文章看“验证python能否正常运行”章节,文章里告诉了你怎么查找python。更简单的方法就是看下载路径,如下图,红框显示的就是flask的安装路径,是不是和上文说的是一样的。如果你找不到AppData这个文件夹,请根据下图把选项勾选上。如果你的电脑知识薄弱,把这篇科普看完对你很有帮助win10点击上方的“查看”,勾选上“文件拓展名”和“隐藏的项目”。win11点击“查看”-“显示”,勾选上“文件拓展名”和“隐藏的项目”。下图就是下载的flask库。第一个文件夹包含了库的所有文件,包括Python代码、数据文件、编译的扩展等。然而,库的版本信息通常不会直接体现在文件夹名称中,因此就有了第二个带版本号的文件夹,这个文件夹不用管也不能删除。其他库也是同理。我们再来下载pygame库,我已经下过了,可以看到pygame就不需要依赖库,只需要它自己本身一个库就够了。找到安装路径,也可以看到pygame文件夹和一个带版本号的pygame文件夹。刚刚我们说过有极少数的库,下载命令和导入代码时的库名不一致,比如常见的pillow库(图像处理库),这是下载时的库名,而这是安装好后的库,名称为PIL。这就是为什么导入代码是importPIL,因为安装好后的文件夹名就是PIL,代码要跟文件夹名一致,不然代码就会找不到文件夹。导入代码:什么是镜像源镜像源是指存放Python第三方库的服务器副本,用户可以通过镜像源下载Python第三方库。正常情况下,pip默认指向Python官网,从官方源下载第三方库,但由于各种原因(比如官方服务器在国外),官方源的下载速度很慢且不稳定。而镜像源则是将第三方库复制到各个区域的服务器上,提高下载速度。常用镜像源有清华、阿里、豆瓣、网易等等。为什么要用镜像源可以提高第三方库的下载速度。可以减轻官方源的负担。可以解决网络连接失败、下载失败问题。如何换源下载非常简单,就是在正常的下载命令后面添加:-i镜像源网址。完整命令:pipinstall库名-i镜像源网址。注意空格!!!很多人都会出错。例如:用豆瓣的镜像源下载最新版的flask库:pipinstallflask-ihttps://pypi.douban.com/simple/用网易的镜像源下载指定版本的xlrd库:pipinstallxlrd==1.2.0-ihttps://mirrors.163.com/pypi/simple/常见镜像源地址更具体教程看下文的:使用pip下载库失败查错步骤。如何更换默认下载源但每次我们下载库的时候都要多写命令去指定镜像源,这岂不是很麻烦。所以我们可以更换python的默认下载源,以后下载时就会默认从更换的镜像源下载,不用每次都去指定镜像源。请在cmd命令行中分别执行以下两行命令来更换清华的默认下载源:pipconfigsetglobal.index-urlhttps://pypi.tuna.tsinghua.edu.cn/simple/1pipconfigsetinstall.trusted-hostpypi.tuna.tsinghua.edu.cn1执行效果如下:出现Writingtoxxxxxxxx并且没有红色报错或者黄色警告就代表执行成功了。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.cn12345pip常用命令(重要)命令含义piplist查看所有pip安装的库pipinstall库名安装库pipinstall-U库名升级库(能用就别升级)pipuninstall库名卸载库(一般不卸载)pipshow库名查看某个库的信息pipcachepurge清除pip缓存。如果pip在安装第三方库的过程中卡住,可以按ctrl+c先退出,然后用此方法清除缓存之后重新下载python-mpipinstall--upgradepip升级pip到最新版‘pip’不是内部或外部命令,也不是可运行的程序或批处理文件。在使用pip命令时若报错‘pip’不是内部或外部命令,也不是可运行的程序或批处理文件。优先考虑安装python时没有勾选配置环境变量,具体教程请看「Python入门」安装Python程序超详细解析及教程。一定要把教程看完,而且安装完成后根据教程完完整整验证一遍,才能保证python安装无误。若已配置好环境变量,那可能是pip未安装成功,请在cmd命令行中输入以下命令来安装pip。python-mensurepip--upgrade1造成该错误的原因可能有:系统不兼容,需要手动安装。安装python时选择自定义安装,但未勾选安装pip。若成功安装pip(不报错就安装成功了)后依旧报此错误,就执行升级pip的命令。升级后一般问题就解决了。python-mpipinstall--upgradepip1如果还不行,可以下载文章最上方的get-pip.py(即python-pip安装更新)文件,这个文件就是py文件,就像平时运行python代码一样运行该文件,会帮助你自动下载最新版的pip。使用pip下载库失败查错步骤先检查自己的单词拼写和格式是否有误,例如==两边不能有空格。检查自己是否换过默认下载源,若换过默认源就会在第一行显示“Lookinginindexes:镜像源网址”,若没有就代表没有换过默认源。若没有更换过请先按照上文教程更换,更换之后一般能顺利下载。若换过默认源还不能下载,就使用临时换源命令来下载。该命令与默认下载无区别,只是后面多个-i和镜像源网址(==两边没有空格,-i两边有空格,要检查清楚)。xxx是要安装的库名称,xx.xx.xx代表版本,不要==xx.xx.xx就是默认下载最新版;后面的网址是镜像源地址,这是豆瓣的,也可以换其他的:pipinstallxxx==xx.xx.xx-ihttps://pypi.douban.com/simple/1一次不行多试几次,多换几个镜像源试试。其他镜像源去这个网址以上都不行就升级pip,升级之后再下载。除非python版本较老,不然一般不是pip的问题。pip升级命令:python-mpipinstall--upgradepip1若还不行(可能性较小),就去python官网下载离线包进行离线安装或请求老师帮助。导入库失败使用import导入库失败(用vscode报错:无法解析导入),原因可能有:1.库名写错了;2.根本没有下载库;3.下载的库不完整;4.下载库的python版本和使用的python版本不一致。首先检查自己的库名是对的,特别是遇到上文说的库名不一致的情况(比如pillow库,下载用的pillow,写代码用的PIL),请认真检查导入的库名。库名没有错误,就确认自己是下载好库的,我们这里以pygame库为例,打开cmd(上文有教),输入piplist(上文有教),看看安装好的库中有没有pygame,如下图。这个排序是按字母来排的,还是很好找的。如果没有就代表没有下载安装这个库,请执行安装命令来安装pygame(上文有教),安装命令:pipinstallpygame。安装完成后再使用piplist命令来看看是不是已经出现在了安装目录里(就像第2步的图片那样)。出现了就代表确定安装成功了,一般也不会有完整性问题。如果还是导入失败,可能是电脑安装了多个python解释器版本,比如你将pygame下载到了3.10版本,运行时却用的3.11版本,那肯定是不行的。还是需要用到cmd,我们在cmd中输入python-V(-前面有空格,V大写),不会写就复制,然后按下回车键会显示当前用的python版本,如下图所示,我用的是3.11.6版本。你安装的库默认就是安装到这个版本里的。python-V1编辑器我这里以vscode为例,在vscode右下角会显示正在使用的python版本,如下图所示,我使用的python版本和cmd里面的版本是一致的,因此没问题。如果你的不一样,就点击它。然后vscode上方就会弹出选择python解释器,如下图,选择与你cmd一致的版本就好了。这里有vscode更详细的教程,编程小白想提升自己一定要看。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

QQ|手机版|心飞设计-版权所有:微度网络信息技术服务中心 ( 鲁ICP备17032091号-12 )|网站地图

GMT+8, 2025-1-10 06:03 , Processed in 0.856225 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表