安庆大理运城常德铜陵江西
投稿投诉
江西南阳
嘉兴昆明
铜陵滨州
广东西昌
常德梅州
兰州阳江
运城金华
广西萍乡
大理重庆
诸暨泉州
安庆南充
武汉辽宁

Python包管理工具

12月16日 萌嘟嘟投稿
  一、Pip1。1pip简介
  Python之所以受欢迎不光是因为它简单易学,更重要的是它有成千上万的宝藏库。这些库相当于是已经集成好的工具,只要安装就能在Python里使用。它们可以处理各式各样的问题,无需你再造轮子,而且随着社区的不断更新维护,有些库越来越强大,几乎能媲美企业级应用。那么这些工具库怎么下载安装呢?它们被放在一个统一的仓库里,名叫PyPi(PythonPackageIndex),所有的库安装都是从这里调度。有了仓库之后,还需要有管理员,pip就是这样一个角色。
  pip是Python中的标准库管理器,这意味着它是一个工具,用它可以来管理Python标准库中其他的包,允许你安装和管理不属于Python标准库的其它软件包,其提供了对Python包的查找、下载、安装、卸载等功能。总的来说,pip的Python第三方库的大管家,搞懂它,会让你省很多事。从Python3Python3。4、Python2Python2。7。9版本开始,pip默认包含在Python的安装程序中,在安装Python时将会自动被安装,省事方便。
  Python的安装器中自带了pip,所以你可以直接使用它,除非你安装的是更早版本的Python。你可以通过以下命令来判断是否已安装:pipversionPython2。x版本命令pip3versionPython3。x版本命令
  如果你的Python环境没有安装pip,则可以使用以下方法来手动安装。pip安装文件下载:pypi。orgprojectpip下载安装脚本curlhttps:bootstrap。pypa。iogetpip。pyogetpip。pyPython2。x运行安装脚本pythongetpip。pyPython3。x运行安装脚本python3getpip。py升级pip版本,需要使用python的命令来升级python3mpipinstallupgradepip
  一般情况下,如果同时安装了Python2和Python3,那么pip对应的是Python2,pip3对应的是Python3。若是只安装了Python3的话,那么pip和pip3的使用效果是完全相同的。1。2pip常用命令
  pip提供的命令不多,但是都很实用
  命令
  说明
  pipversion或者pipV
  查看pip版本
  pipinstallPackageName〔x。y。z〕
  使用pip安装第三方库,如果后面带有版本号,则安装指定版本
  pipuninstallPackageName
  安装好的库可以再卸载
  pipinstallupgradePackageName
  对当前库进行版本升级
  piplist
  列出所有已安装的第三方库和对应版本
  pipcheckPackageName
  验证已安装的库是否有兼容依赖问题
  piplistoutdated或者piplisto
  目前已经安装的库中,看哪些需要版本升级
  pipshowPackageName
  显示已安装软件包的信息
  pipshowverbosePackageName
  显示有关包的所有信息
  pipshowfPackageName
  查看库信息
  piphelp
  帮助显示命令的帮助
  pipconfiglist
  查看pip配置1。3配置pip镜像
  pip命令默认使用的是国外的pypi镜像(pypi。python。org),安装慢不说,有时甚至会导致出现超时等网络问题,有时候为了安装一个包,失败重试安装好几次都不一定成功。所以,使用国内的pypi镜像,亦即切换pip源,这样速度上更有保证,不失为一种加速pip安装第三方包的好方法。常用的镜像站有阿里云、清华大学等。其中清华大学开源软件镜像站是每5分钟同步一次的,比较推荐使用。阿里云镜像站的速度也非常快,这也是我现在在使用的。
  切换切换pip源可以是临时性的,也可以设置为默认。临时性的,就是在安装包时,通过pip命令的i选项指定镜像源即可。例如,临时使用阿里云镜像站作为pip源,可以是这样安装:安装包时,使用i参数,指定pip源pipinstallihttps:mirrors。aliyun。compypisimpleredis
  如果每次安装时都想要通过镜像源来安装,上面的办法不免有些麻烦。我们可以修改pip的配置文件,将镜像源写入到pip配置文件中。对于linux系统,修改。pippip。conf文件(没有就创建一个文件夹及文件,文件夹要加。,表示是隐藏文件夹):创建。pippip。conf命令mkdir。piptouch。pippip。conf
  然后在文件中保存如下内容:〔global〕添加默认下载地址,以阿里云源为例indexurlhttps:mirrors。aliyun。compypisimple〔install〕此参数是为了避免麻烦,否则使用的时候可能会提示不受信任trustedhostmirrors。aliyun。com
  对于windows系统,在C:Users文件夹下的用户目录(例如如果当前用户是Administrator则是C:UsersAdministrator)下创建pip文件夹,然后再在此文件夹下创建pip。ini文件,在文件中写入一下内容:〔global〕添加默认下载地址,以阿里云源为例indexurlhttps:mirrors。aliyun。compypisimple〔install〕此参数是为了避免麻烦,否则使用的时候可能会提示不受信任trustedhostmirrors。aliyun。com
  配置完成后再通过pipconfiglist查看pip配置。二、Pyenv
  我们经常会遇到这样的开发需求,比如你手头有多个开发项目,其中项目A要求用python3。7,项目B需要用python3。6,有要求项目A和项目B依赖包相互独立,互不干扰。为了满足这样的开发需求,我们需要在自己的电脑上安装多个Python版本,并且项目之间进行环境隔离。因此,我们要想运行这些项目,在工作电脑上就要安装不同版本的Python。pyenv是Python版本管理工具,通过系统修改环境变量来实现Python不同版本的切换,利用它可以在同一台电脑上安装多个版本的Python,设置目录级别的Python,还能创建和管理vitualpythonenviroments。而且所有的设置都是用户级别的操作,不需要sudo命令。2。1安装或升级pyenv
  首先安装pyenv,如果你是Mac电脑,那么推荐使用Homebrew来安装。brewupdatebrewinstallpyenv
  要想升级pyenv,则可以执行:brewupdatebrewupgradepyenv
  pyenv安装完成后,需要将HOME。pyenvbin添加到PATH变量前面,这一步非常关键。echoexportPATHHOME。pyenvbin:PATH。bashprofilesource。bashprofile
  也可以采用手动安装的方式,将pyenv检出到你想安装的目录。gitclonegit:github。comyyuupyenv。git。pyenvechoexportPYENVROOTHOME。pyenv。bashprofileechoexportPATHPYENVROOTbin:PATH。bashprofilesource。bashprofile
  添加环境变量,将PYENVROOT指向pyenv检出的根目录,并向PATH添加PYENVROOTbin以提供访问pyenv命令的路径。这里的shell配置文件(。bashprofile)依不同系统而需作修改,如果使用Zsh则需要相应的配置。zshrc
  在使用pyenv之后使用pip安装的第三方模块会自动安装到当前使用python版本下,不会和系统模块产生冲突。使用pip安装模块之后,如果没有生效,记得使用pyenvrehash来更新。2。2用pyenv安装Python
  安装完pyenv,可以安装Python,首先查看可安装的Python版本:pyenvinstalll,接下来开始安装Pythonpyenvinstallversionversion为版本号安装完成后进行更新pyenvrehash
  执行命令pyenvversions查看安装结果。查看所有已经安装的版本,注:星号指定当前的版本pyenvversionssystem(setbyUsersdllwh。pyenvversion)
  可以看到,已经成功安装了Python,安装的位置在Usersdllwh。pyenv。2。3Python版本管理pyenvglobal全局设置python为指定版本。通过将版本号写入。pyenvversion文件的方式,设置全局的Python版本,切换完成后,在系统中任何地方执行python,你会发现都是同样的Python版本。pyenvlocal属于局部切换,通过将版本号写入当前目录下的。pythonversion文件的方式,修改当前目录下的Python版本,出了当前目录则失效。而且通过这种方式设置的Python版本优先级较global高。pyenvshell设置当前shell窗口使用的python版本,通过设置当前shell的PYENVVERSION环境变量的方式,设置shell的Python版本。这个版本的优先级比local和global都要高。unset参数可以用于取消当前shell设定的版本。pyenvglobal3。9。9pyenvversionsystem3。9。9(setbyUserschunming。liu。pyenvversion)
  可以看到,3。9。9前面有一个星号,说明成功切换到了3。9。9版本,可以执行一下python来验证。三、Pipenv
  Pipenv是Python官方推荐的包管理工具,它综合了virtualenv、pip和pyenv三者的功能,你可以使用pipenv这一个工具来安装、卸载、跟踪和记录依赖性,并创建、使用和组织你的虚拟环境。3。1安装和升级pipenv
  如果你是Mac电脑,那么推荐使用Homebrew来安装和升级pipenv:brewupdatebrewinstallpipenvbrewupdatebrewupgradepipenv
  也可以通过pip来安装和升级pipenv:pipinstallpipenvpipinstallupgradepipenv3。2为项目建立虚拟环境
  进入到项目目录中,通过下面的指令为项目创建虚拟环境。mkdirpipenvdemocdpipenvdemopipenvpython3。9。9CreatingavirtualenvforthisprojectPipfile:UsersdllwhworkpipenvdemoPipfileUsingUsersdllwh。pyenvversions3。9。9binpython3(3。9。9)tocreatevirtualenvCreatingvirtualenvironment。。。UsingbaseprefixUsersdllwh。pyenvversions3。7。7NewpythonexecutableinUsersdllwh。localsharevirtualenvspipenvdemoRYMSREdabinpython3AlsocreatingexecutableinUsersdllwh。localsharevirtualenvspipenvdemoRYMSREdabinpythonInstallingsetuptools,pip,wheel。。。done。RunningvirtualenvwithinterpreterUsersdllwh。pyenvversions3。7。7binpython3Successfullycreatedvirtualenvironment!Virtualenvlocation:Usersdllwh。localsharevirtualenvspipenvdemoRYMSREda
  上面的操作,给pipenvdemo这个项目初始化了一个Python3。9。9的虚拟环境,并在项目录下生成一个项目依赖包文件Pipefile。如果系统中没有3。9。8版本的Python,pipenv会调用pyenv来安装对应的Python的版本。默认地,虚拟环境会创建在。localsharevirtualenvs目录里面。我们也可以通过pipenvvenv查看项目的虚拟环境目录。可以通过pipenvrm删除虚拟环境。
  如果想更改虚拟环境的目录,可以在。bashrc或。bashprofile中,设置环境变量WORKONHOME,指定虚拟环境的目录所在位置,比如想将虚拟环境放到。venvs目录,则可以执行下面的命令。echoexportWORKONHOME。venvs。bashprofilesource。bashprofile
  如果希望在项目目录下创建虚拟环境目录(。venv),需要在。bashrc或。bashprofile中配置环境变量PIPENVVENVINPROJECT:echoexportPIPENVVENVINPROJECT1。bashprofilesource。bashprofile3。3用Pipenv管理依赖包
  pipenv使用Pipfile和Pipfile。lock来管理依赖包,并且在使用pipenv添加或删除包时,自动维护Pipfile文件,同时生成Pipfile。lock来锁定安装包的版本和依赖信息。相比pip需要手动维护requirements。txt中的安装包和版本,具有很大的进步。3。3。1安装依赖包
  为项目安装依赖包到虚拟环境中,使每个项目拥有相互独立的依赖包,是非常不错的Python的开发实践。安装依赖包到虚拟环境中的方法:pipenvinstallpytest
  执行完上面的命令后,检查一下是否安装成功:pipenvgraph
  观察项目的根目录下,又多了一个Pipfile。lock文件。这两个文件记录了此项目的依赖包,这两个文件的区别是Pipfile中安装的包不包含包的具体版本号,而Pipfile。lock是包含包的具体的版本号的。如果不想产生Pipfile。lock文件,在安装依赖包的时候,加上skiplock选项即可。
  在使用pipenv的时候,常常会安装过程比较慢,这个是因为pipenv创建的Pipfile中默认的Pypi源是python官方的pypi。python。orgsimple。我们国内pipenvinstallpypimirrorhttps:pypi。tuna。tsinghua。edu。cnsimple软件包名称
  为了避免每次都要指定pypimirror,我一般会在创建好Pipfile以后,将文件中source块下的url字段,设置为国内的pypi源,我推荐的是清华的Pypi源或者阿里源,具体设置如下:〔〔source〕〕阿里镜像源urlhttps:mirrors。aliyun。compypisimple清华大学镜像源urlhttps:pypi。tuna。tsinghua。edu。cnsimpleverifyssltruenamepypi3。3。2删除依赖包
  如果是要删除虚拟环境中的第三方包,执行:pipenvuninstallpytest3。3。3安装项目所有的依赖包
  用git管理项目时候,要把Pipfile和Pipfile。lock加入版本跟踪。这样clone了这个项目的同学,只需要执行:pipenvinstall
  就可以安装所有的Pipfile中〔packages〕部分列出来的包了,并且自动为项目在自己电脑上创建了虚拟环境。3。3。4安装pipefile。lock中的依赖包
  上面的方法都是安装Pipfile中列出来的第三方包的最新版本,如果是想安装Pipfile。lock中固定版本的第三方依赖包,需要执行:pipenvinstallignorepipfile3。3。5安装requirements。txt里面的依赖包
  如果项目之前使用requirements。txt来管理依赖的,那么使用pipenv安装所有依赖可以采用类似pip的方法:pipenvinstallrrequirements。txt3。4使用虚拟环境开发
  虚拟环境创建好了之后,就可以在里面进行开发了。如果在命令行下开发,则在项目目录下执行pipenvshell,就进入到了虚拟环境中,在这个环境中,已经包含安装过的所有依赖包了,接下来就可以利用这些依赖包进行开发工作了。如果是用Pycharm进行开发,就更简单了,直接用Pycharm打开项目即可。可以从Pycharm中的左侧导航栏里面看到ExternalLibraries显示的是虚拟环境中的Python解释器了。
  在虚拟环境中执行开发好的程序,有两种方式,一种是前面提到的先执行pipenvshell进入到虚拟环境后,再执行python程序;另一种方式,则是执行pyenvrun,比如在虚拟环境中执行基于pytest框架编写的测试用例,只需要执行下面的命令即可:pipenvrunpy。test
  作者:独泪了无痕
  链接:https:juejin。cnpost7063699409703272485
投诉 评论 转载

社评为何华尔街刚出新规,滴滴就启动退市?来源:环球时报滴滴出行星期五宣布启动从纽约证券交易所退市的工作,并启动在香港上市的准备工作。早前一天,美国证券交易委员会(SEC)宣布新规定,要求在美上市的外国公司提供审……没有对比就没有伤害!V40轻奢版和OPPOA95,同一处理器OPPOA95发布不久后,这款定价2000档的产品迅速引来了网友们的关注,不只是因为这款手机的性价比高,同时它还采用了与荣耀V40同款处理器天玑800U,然而不同的是,荣耀V4……无惧续航,高端智能驾驶,新能源标杆【购红旗,来新东方!】要礼品!要服务!全部安排!只等您来!红旗品牌全尺寸智慧纯电SUV,红旗EHS9集红旗品牌全新设计理念和前瞻技术于一体,以满满的仪式感、旗舰级精……核酸检测技术上新较传统方法漏判误判率更低数字PCR技术灵敏度高、可精准定量。那些多次采用实时荧光定量PCR方式进行核酸检测,结果却为阴性的病毒携带者,利用数字PCR技术就能准确地检测出他们是阳性患者。春节前后,……Pythonenumerate()使用计数器简化循环摘要:当您需要计数和迭代中的值时,Pythonenumerate()允许您编写Pythonicfor循环。最大的优点enumerate()是它返回一个带有计数器和值的元组,因此……区块链BSC匿名币独角兽,DCS是如何成为早期红利的价值捕获前言:2020年市场牛市如期而至,而在风口上的DeFi和NFT项目开始出现了狂暴的大暴涨,区块链技术各种底层技术比如公链、云存储、跨链、DAO等方面的技术开始逐步完善,开……智能合约开发笔记CompilerError:Stacktoodeep,tryremovinglocalvariables。大多数是因为函数内局部变量(包括入参和返回值)定义过多,应该小于……Python包管理工具一、Pip1。1pip简介Python之所以受欢迎不光是因为它简单易学,更重要的是它有成千上万的宝藏库。这些库相当于是已经集成好的工具,只要安装就能在Python里使用。……开会还在用手写?打开手机这个功能,会议纪要自动转成文字春节假期已结束,大家都开始重新回到自己的工作岗位上,收假回来开会的次数和时间会比以往要多、要久,开会一般都是手写会议纪要,手速肯定跟不上语速,而且整理时会花费很多时间。其实手机……苹果自研芯片再扩版图动了老朋友的奶酪本报记者李玉洋李正豪上海报道近日有报道称,苹果公司正在加利福尼亚设立新办公室,招聘拥有射频芯片、RFIC(射频集成电路)和无线SoC(系统级芯片)研发经验的工程师,以开发……盾牌座uy能容纳6500兆个地球,如果地球也有这么大,那地球地球如同宇宙中的一颗尘埃,这并非夸大其词,宇宙中存在着远大于地球的星球。在太阳系中,木星和太阳是体积最大的两个天体,前者是地球的1320倍,后者是地球的130万倍。然而,……大厂也内卷?看裁员潮背后互联网企业的嬗变12月1日,爱奇艺被爆出正在大幅裁员,裁员比例高达2040,为该公司史上最大规模的一轮裁撤;12月7日,快手科技传出年底将大裁员,计划裁员30,目前正在对国际业务线进行裁员。……
win11首发竟然不支持安装安卓APP,还要等到明年8月价格更香!无广告国产智能电视推荐,这三款最值得买新能源汽车产销突破300万产业发展再上新台阶江苏六大工业互联网平台荣获国家首批星级平台关于Python的Selenium框架全解,一篇完整的说明书印度向中国抛出橄榄枝,将2。6亿订单送给华为,我国会接受吗?VR风潮不断高涨,行业发展趋势何在?华为P50ampampamp小米MIX4ampampamp荣10款无线充电器对比是的!5W无线充比不过5W线充前沿蓝厂天玑1200新机曝光120Hz高刷屏潜望四摄新系列?华山东峰上风光与赌棋亭宋PLUS新能源平价销售中售价14。68万起秋季有效的预防宝宝感冒的方法特殊的生日作文500字曹操征战多年,他的兵是从哪里来的?台湾女鞋哪个牌子好女鞋十大品牌排行榜推荐淘菜菜微信小程序无法看评论!用户称买菜就像开盲盒,回应小程序客户难约如何高效进行电话邀约技巧都在这里超级搞笑好看的电影推荐人一岁到一百岁的最新年龄顺口溜,编的太有。。。电子客票试行范围持续扩大,哈牡高铁不再用纸质车票叶用芥菜的贮藏保鲜方法达摩为何来中国达摩来到中国的原因是什么孕晚期如何进行乳房按摩试试大按摩法

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找七猫云易事利