Python开发之pip安装及使用方法详解
pip是什么
其实,pip就是Python标准库(ThePythonStandardLibrary)中的一个包,这个包比较特殊,用它可以来管理Python标准库(ThePythonStandardLibrary)中其他的包。pip支持从PyPI(https://pypi.org/),版本控制,本地项目以及直接从分发文件进行安装。pip是一个命令行程序。安装pip后,会向系统添加一个pip命令,该命令可以从命令提示符运行。
目前,pip是ThePythonPackagingAuthority(PyPA)推荐的Python包管理工具!
ThePythonPackagingAuthority(PyPA)isaworkinggroupthatmaintainsmanyoftherelevantprojectsinPythonpackaging.
pip安装
从Python2版本>=2.7.9或Python3版本>=3.4开始,官网的安装包中已经自带了pip,在安装时用户可以直接选择安装。或者如果使用由virtualenv或者pyvenv创建的VirtualEnvironment,那么pip也是被默认安装的。
如果没有在安装python时候,选择上"安装pip"选项,那么也可以从本地安装。例如,直接使用get-pip.py进行安装。
首先从官网下载get-pip.py;
然后直接运行pythonget-pip.py即可;
pip使用
安装后,在命令行中键入:pip+回车,就会出现如下使用说明:
Usage: pip[options] Commands: installInstallpackages. downloadDownloadpackages. uninstallUninstallpackages. freezeOutputinstalledpackagesinrequirementsformat. listListinstalledpackages. showShowinformationaboutinstalledpackages. checkVerifyinstalledpackageshavecompatibledependencies. configManagelocalandglobalconfiguration. searchSearchPyPIforpackages. wheelBuildwheelsfromyourrequirements. hashComputehashesofpackagearchives. completionAhelpercommandusedforcommandcompletion. helpShowhelpforcommands. GeneralOptions: -h,--helpShowhelp. --isolatedRunpipinanisolatedmode,ignoringenvironmentvariablesanduserconfiguration. -v,--verboseGivemoreoutput.Optionisadditive,andcanbeusedupto3times. -V,--versionShowversionandexit. -q,--quietGivelessoutput.Optionisadditive,andcanbeusedupto3times(correspondingto WARNING,ERROR,andCRITICALlogginglevels). --log Pathtoaverboseappendinglog. --proxy Specifyaproxyintheform[user:passwd@]proxy.server:port. --retries Maximumnumberofretrieseachconnectionshouldattempt(default5times). --timeout Setthesockettimeout(default15seconds). --exists-action Defaultactionwhenapathalreadyexists:(s)witch,(i)gnore,(w)ipe,(b)ackup, (a)bort). --trusted-host Markthishostastrusted,eventhoughitdoesnothavevalidoranyHTTPS. --cert PathtoalternateCAbundle. --client-cert PathtoSSLclientcertificate,asinglefilecontainingtheprivatekeyandthe certificateinPEMformat. --cache-dir Storethecachedatain . --no-cache-dirDisablethecache. --disable-pip-version-check Don'tperiodicallycheckPyPItodeterminewhetheranewversionofpipisavailablefor download.Impliedwith--no-index. --no-colorSuppresscoloredoutput
pip命令组合比较灵活,下面重点介绍几个。
install
命令行直接键入pipinstall+回车,则出现如下提示:ERROR:Youmustgiveatleastonerequirementtoinstall(see"piphelpinstall")。接着我们键入piphelpinstall,就会出现pipinstall的使用说明了,如下:
Usage: pipinstall[options][package-index-options]... pipinstall[options]-r [package-index-options]... pipinstall[options][-e] ... pipinstall[options][-e] ... pipinstall[options] ... Description: Installpackagesfrom: -PyPI(andotherindexes)usingrequirementspecifiers. -VCSprojecturls. -Localprojectdirectories. -Localorremotesourcearchives. pipalsosupportsinstallingfrom"requirementsfiles",whichprovide aneasywaytospecifyawholeenvironmenttobeinstalled. InstallOptions: -r,--requirement Installfromthegivenrequirementsfile.Thisoptioncanbeusedmultipletimes. -c,--constraint Constrainversionsusingthegivenconstraintsfile.Thisoptioncanbeusedmultipletimes. --no-depsDon'tinstallpackagedependencies. --preIncludepre-releaseanddevelopmentversions.Bydefault,piponlyfindsstableversions. -e,--editable Installaprojectineditablemode(i.e.setuptools"developmode")fromalocalprojectpathora VCSurl. -t,--target Installpackagesinto .Bydefaultthiswillnotreplaceexistingfiles/foldersin .Use --upgradetoreplaceexistingpackagesin withnewversions. --platform Onlyusewheelscompatiblewith .Defaultstotheplatformoftherunningsystem. --python-version OnlyusewheelscompatiblewithPythoninterpreterversion .Ifnotspecified,thenthe currentsysteminterpreterminorversionisused.Amajorversion(e.g.'2')canbespecifiedto matchallminorrevsofthatmajorversion.Aminorversion(e.g.'34')canalsobespecified. --implementation OnlyusewheelscompatiblewithPythonimplementation ,e.g.'pp','jy','cp',or 'ip'.Ifnotspecified,thenthecurrentinterpreterimplementationisused.Use'py'toforce implementation-agnosticwheels. --abi OnlyusewheelscompatiblewithPythonabi ,e.g.'pypy_41'.Ifnotspecified,thenthe currentinterpreterabitagisused.Generallyyouwillneedtospecify--implementation, --platform,and--python-versionwhenusingthisoption. --userInstalltothePythonuserinstalldirectoryforyourplatform.Typically~/.local/,or %APPDATA%\PythononWindows.(SeethePythondocumentationforsite.USER_BASEforfulldetails.) --root Installeverythingrelativetothisalternaterootdirectory. --prefix Installationprefixwherelib,binandothertop-levelfoldersareplaced -b,--build Directorytounpackpackagesintoandbuildin.Notethataninitialbuildstilltakesplaceina temporarydirectory.ThelocationoftemporarydirectoriescanbecontrolledbysettingtheTMPDIR environmentvariable(TEMPonWindows)appropriately.Whenpassed,builddirectoriesarenot cleanedincaseoffailures. --src Directorytocheckouteditableprojectsinto.Thedefaultinavirtualenvis" /src". Thedefaultforglobalinstallsis" /src". -U,--upgradeUpgradeallspecifiedpackagestothenewestavailableversion.Thehandlingofdependencies dependsontheupgrade-strategyused. --upgrade-strategy Determineshowdependencyupgradingshouldbehandled[default:only-if-needed]."eager"- dependenciesareupgradedregardlessofwhetherthecurrentlyinstalledversionsatisfiesthe requirementsoftheupgradedpackage(s)."only-if-needed"-areupgradedonlywhentheydonot satisfytherequirementsoftheupgradedpackage(s). --force-reinstallReinstallallpackageseveniftheyarealreadyup-to-date. -I,--ignore-installedIgnoretheinstalledpackages(reinstallinginstead). --ignore-requires-pythonIgnoretheRequires-Pythoninformation. --no-build-isolationDisableisolationwhenbuildingamodernsourcedistribution.BuilddependenciesspecifiedbyPEP 518mustbealreadyinstalledifthisoptionisused. --install-option Extraargumentstobesuppliedtothesetup.pyinstallcommand(uselike--install-option="-- install-scripts=/usr/local/bin").Usemultiple--install-optionoptionstopassmultipleoptions tosetup.pyinstall.Ifyouareusinganoptionwithadirectorypath,besuretouseabsolute path. --global-option Extraglobaloptionstobesuppliedtothesetup.pycallbeforetheinstallcommand. --compileCompilePythonsourcefilestobytecode --no-compileDonotcompilePythonsourcefilestobytecode --no-warn-script-locationDonotwarnwheninstallingscriptsoutsidePATH --no-warn-conflictsDonotwarnaboutbrokendependencies --no-binary Donotusebinarypackages.Canbesuppliedmultipletimes,andeachtimeaddstotheexisting value.Acceptseither:all:todisableallbinarypackages,:none:toemptytheset,oroneor morepackagenameswithcommasbetweenthem.Notethatsomepackagesaretrickytocompileandmay failtoinstallwhenthisoptionisusedonthem. --only-binary Donotusesourcepackages.Canbesuppliedmultipletimes,andeachtimeaddstotheexisting value.Acceptseither:all:todisableallsourcepackages,:none:toemptytheset,oroneor morepackagenameswithcommasbetweenthem.Packageswithoutbinarydistributionswillfailto installwhenthisoptionisusedonthem. --prefer-binaryPreferolderbinarypackagesovernewersourcepackages. --no-cleanDon'tcleanupbuilddirectories. --require-hashesRequireahashtocheckeachrequirementagainst,forrepeatableinstalls.Thisoptionisimplied whenanypackageinarequirementsfilehasa--hashoption. --progress-bar Specifytypeofprogresstobedisplayed[off|on|ascii|pretty|emoji](default:on) PackageIndexOptions: -i,--index-url BaseURLofPythonPackageIndex(defaulthttps://pypi.org/simple).Thisshouldpointtoa repositorycompliantwithPEP503(thesimplerepositoryAPI)oralocaldirectorylaidoutinthe sameformat. --extra-index-url ExtraURLsofpackageindexestouseinadditionto--index-url.Shouldfollowthesamerulesas --index-url. --no-indexIgnorepackageindex(onlylookingat--find-linksURLsinstead). -f,--find-links Ifaurlorpathtoanhtmlfile,thenparseforlinkstoarchives.Ifalocalpathorfile://url that'sadirectory,thenlookforarchivesinthedirectorylisting. --process-dependency-linksEnabletheprocessingofdependencylinks. GeneralOptions: -h,--helpShowhelp. --isolatedRunpipinanisolatedmode,ignoringenvironmentvariablesanduserconfiguration. -v,--verboseGivemoreoutput.Optionisadditive,andcanbeusedupto3times. -V,--versionShowversionandexit. -q,--quietGivelessoutput.Optionisadditive,andcanbeusedupto3times(correspondingtoWARNING, ERROR,andCRITICALlogginglevels). --log Pathtoaverboseappendinglog. --proxy Specifyaproxyintheform[user:passwd@]proxy.server:port. --retries Maximumnumberofretrieseachconnectionshouldattempt(default5times). --timeout Setthesockettimeout(default15seconds). --exists-action Defaultactionwhenapathalreadyexists:(s)witch,(i)gnore,(w)ipe,(b)ackup,(a)bort). --trusted-host Markthishostastrusted,eventhoughitdoesnothavevalidoranyHTTPS. --cert PathtoalternateCAbundle. --client-cert PathtoSSLclientcertificate,asinglefilecontainingtheprivatekeyandthecertificatein PEMformat. --cache-dir Storethecachedatain . --no-cache-dirDisablethecache. --disable-pip-version-check Don'tperiodicallycheckPyPItodeterminewhetheranewversionofpipisavailablefordownload. Impliedwith--no-index. --no-colorSuppresscoloredoutput
上面一大堆,总结来说,安装命令就是:pipinstall<包名>或pipinstall-rrequirements.txt(对于本地安装包可以指定路径)。唯一需要特殊说明的是,安装时可以指定版本号来安装,举例如下:
pipinstallSomePackage#最新版本 pipinstallSomePackage==1.0.4#指定版本 pipinstall'SomePackage>=1.0.4'#最小版本
uninstall
卸载安装包命令:pipuninstall<包名>或pipuninstall-rrequirements.txt
升级包
pipinstall-U<包名>或:pipinstall<包名>--upgrade
freeze
pipfreeze,查看已经安装的包及版本信息。导出到指定文件中,如图,注意“>”,文件名称随意。常见按第二种写法。
list
列出当前已经安装的包。使用命令piplist-o则可查询可升级的包。
show
显示包所在目录及信息,格式为:pipshow<包名>。如果不加包名,则提示ERROR:Pleaseprovideapackagenameornames.。
search
搜索包,格式为:pipsearch<搜索关键字>。如果不写关键字,则提示ERROR:Missingrequiredargument(searchquery).。
更多关于pip安装及使用方法请查看下面的相关链接
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。