Python包管理必备–pip命令&设置镜像源[通俗易懂]

Python包管理必备–pip命令&设置镜像源[通俗易懂]近期周围很多朋友询问,Python如何管理包和模块,并且很多常用的包使用pip安装的时候,总是因为网络问题中断,在学习新包时造成了很大的挫败感,这些问题也是之前自己在学习过程中,遇到的痛点,所以抽出精力,整理了下之前关于这块的学习笔记,形成文章,希望给其他python道友以帮助,也给自己后续查阅带来方便。Python语言的核心能快速上手并且极具吸引力的是其异常丰富和强大的包,这些包给我们封装好了日常工作中遇到的问题或需求的各种解决方案,所以在python基础知识较为牢固时,遇到具体问题,具体学习对应的包

大家好,又见面了,我是你们的朋友全栈君。

近期周围很多朋友询问,Python如何管理包和模块,并且很多常用的包使用pip安装的时候,总是因为网络问题中断,在学习新包时造成了很大的挫败感,这些问题也是之前自己在学习过程中,遇到的痛点,所以抽出精力,整理了下之前关于这块的学习笔记,形成文章,希望给其他python道友以帮助,也给自己后续查阅带来方便。

Python语言的核心能快速上手并且极具吸引力的是其异常丰富和强大的包,这些包给我们封装好了日常工作中遇到的问题或需求的各种解决方案,所以在python基础知识较为牢固时,遇到具体问题,具体学习对应的包即可。

而学习各种包的第一步,就是将这个包安装到本地或部署到服务器上,本文主要说明在使用pip安装和管理包时遇到的较为常见的问题和解决方案,尤其是镜像安装(因为众所周知的原因,国内访问pipy可能会出现问题等)

特别注意:以下示意代码,均是在电脑终端内完成执行。

一、pip基础讲述

1.1 概述

在电脑上安装完毕python后(不会的自行百度,类似安装常规软件),其会自动安装pip命令,并会包含常用的内置包和模块,对于学习python基础知识而言,再安装个sublime等便可以直接学习了,但如果希望安装其他的包,则需要使用pip命令,以下会详述关于pip命令相关知识。

以下命令,均在终端执行

1.1.1 pip常用命令

一般在学习和使用Python的时候,最常用的是安装或者删除指定的包。

pip常用命令
命令 说明 示意
install 

安装包,后面跟需安装的包名,可一次性安装多个包

可安装已下载到本地的包

也可用于升级pip 命令

pip install packagename1  packagename2 

pip install pillow-4.2xxxxxxx.whl

pip install –upgrade pip

uninstall  卸载包,后面跟需卸载的包名,可一次性卸载多个包 pip uninstall packagename1  packagename2
list 罗列当前已安装的包,会包含包名和版本号 pip list

1.1.2 获取帮助

如果需要获取帮助,或者想进一步了解一些命令的使用信息,可以使用help获取信息。

命令 说明 示意
pip –help 获取关于pip命令的帮助信息,会罗列pip所有的命令 pip –help
pip help command 获取关于指定pip命令的帮助信息 pip help install

 

1.2 依赖打包和部署

一般在自己电脑或者本地服务器上完成某个python项目的开发,或者自己希望将平时的python开发环境(主要是包依赖)完全的copy到另一台电脑时,则需要对某项目的依赖包进行打包,然后在新的服务器或者电脑上重新部署,这样就可以实现自己编写的python代码,在新服务器或电脑上可以运行正常。

1.2.1 依赖包打包

第一步,使用freeze命令,将当前电脑上已经安装的包,收集报名和版本号,并导出为txt文件,并可对导出的txt文件进行二次编辑,删除明确不需要的包,不过一般不建议如此,因为实际开发项目时,都是在指定的虚拟环境内完成,该环境只会安装项目依赖的包。

pip freeze > path_name 
#以下为示例,即将依赖文件导出到当前文件夹内,文件名为requirements.txt
pip freeze > requirements.txt 

1.2.2 重新部署

然后可以将以上导出的txt文件,copy到新的服务器或电脑上,并记住copy的路径,一般是放到新电脑指定项目指定虚拟环境的根文件夹下

pip install -r path_name
#以下为示例,即依赖包的txt文件在当前文件夹内,文件名为requirements.txt
pip install -r requirements.txt

1.3 变更默认使用的python版本

一些使用mac的朋友,因为mac内置的是python2版本,导致:

  1. 在终端内使用pip命令时,默认一般是使用的pip2版本,每次都要输入pip3才能使用pip3版本,如果一不留神,在使用的时候,就会出现意想不到的错误
  2. 在终端使用python命令时,默认一般使用的是python2版本,每次需要显式输入python3才行。

以下将展示如何修改pip和python的默认版本,主要是修改.bash_profile配置文件,该文件主要用于配置用户级环境变量,和Python相关的,包括搜索模块的路径等变量,均在该文件内进行配置。

#主要需修改电脑的配置文件,此处主要针对Mac电脑
#主要修改.bash_profile配置文件
#1、切换到用户路径,并创建.bash_profile文件
cd ~
sudo touch .bash_profile
#2、编辑模式打开以上配置文件
vi .bash_profile
i
#3、插入以下两行语句
alias python="/usr/local/bin/python3.8" #插入此句,修改输入python命令语句时,对应运行的python的默认版本
alias pip="/usr/local/bin/pip3.8" #插入此句,修改输入pip命令语句时,执行的对应pip的默认版本
#4、保存退出并执行生效
ESC
:wq
source ~/.bash_profile

二、pip镜像安装

使用pip进行安装的时候,一般访问的是pypi的服务器,找寻相关的包并自动下载安装,但在国内,一旦某包相对较大时,有极大可能会出现安装过程中因网络原因导致下载中断等问题。

故可以使用镜像服务器进行安装,这些服务器在国内,一般相较于直接访问pypi,其访问和下载速度会得到极大提升。

2.1 临时使用指定镜像安装

#如果希望只是临时使用某个镜像服务器安装指定的包,则可以用以下语句:
pip install -i mirror_url_path packagename
#具体例子如下,比如,使用清华大学的镜像安装  scrapy 包
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple scrapy

2.2 变更默认安装源

如果希望后续使用pip安装所有包的时候,均使用指定的镜像服务器,则可以做以下配置

#如果希望变更默认pip命令安装源,则需要pip的配置文件
#针对mac,pip的配置文件地址为 ~/.config/pip/pip.conf,一般使用以下两个命令修改该文件内的信息
#将某镜像地址修改为默认
pip config set global.index-url mirror_url_path  #指定镜像服务器域名地址
pip config set global.timeout number #设置连接超时时间,以秒为单位,指定number秒后,连接超时 
pip config set install.trusted-host hostname #将以上镜像服务器的域名加入到Install命令的信任域名列表内

#具体例子
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
pip config set global.timeout 300
pip config set install.trusted-host pypi.tuna.tsinghua.edu.cn

#如果希望删除以上参数的值,则可以用unset命令,比如删除timeout参数配置
pip config unset global.timeout

2.3 国内常见的镜像服务器域名地址

#国内比较常用的镜像地址,本人选择的是阿里云的镜像服务
http://pypi.douban.com/simple/ #豆瓣
https://pypi.tuna.tsinghua.edu.cn/simple  #清华开源
https://mirrors.aliyun.com/pypi/simple/  #阿里云,比较靠谱,最起码可以安装jupyter
https://pypi.mirrors.ustc.edu.cn/simple/  #中科大
https://pypi.hustunique.com/ #华中理工
https://pypi.sdutlinux.org/  #山东理工

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/145985.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 从零开始学习UCOSII操作系统2–UCOSII的内核实现「建议收藏」

    从零开始学习UCOSII操作系统2–UCOSII的内核实现「建议收藏」从零开始学习UCOSII操作系统2–UCOSII的内核实现参考书籍:《嵌入式实时操作系统μCOS-II原理及应用》、《嵌入式实时操作系统uCOS-II邵贝贝(第二版)》1、任务的结构–任务控制块首先这个任务控制块是非常的大的,这里面使用很多的宏定义,估计是可以让使用者使用的时候按需配置。所以这里只是整理一些必须要用到的功能,不常用的不讲,讲了就会变成一本书了。(1)任务的关键 OS_ST…

  • vue生成二维码并保存图片_vue实现扫描二维码

    vue生成二维码并保存图片_vue实现扫描二维码<template><div><qrcode-vueid=”qrcodeBox”:size=”qrcodeVue.size”:value=”qrcodeVue.value”:logo=”qrcodeVue.logo”:bgColor=”qrcodeVue.bgColor”:fgColor=”qrcodeVue.fgColor”></qrcode-vue&gt

  • NL-Mean和BM3D去噪原理「建议收藏」

    NL-Mean和BM3D去噪原理「建议收藏」本文为转载,原博客地址:http://blog.csdn.net/jacke121/article/details/55215416图像去噪是非常基础也是非常必要的研究,去噪常常在更高级的图像处理之前进行,是图像处理的基础。可惜的是,目前去噪算法并没有很好的解决方案,实际应用中,更多的是在效果和运算复杂度之间求得一个平衡,再一次验证了我老师的一句话:所有的工程问题最后都是最优化问题

  • python修改第三方库重写_对Python第三方库,再次封装

    python修改第三方库重写_对Python第三方库,再次封装一、为何再次封装?Python一大优势是有丰富的第三方包。可以站在牛人的肩膀上,让编程更简单,功能实现更快,也更完善。但有包还不够,因为包是通用的,普遍的。包含基本功能,或为了普遍性,而给了很多选项。用起来不顺手,或不够简洁。为了更进一步提高效率,就要再次封装。就是依据具体需求,将包重新写,做个性化处理。让工具更顺手,更方便。二、举例比如在U2中,有多种方法查找元素。通过text,describt…

    2022年10月14日
  • JavaCodeTra 猴子选猴王 约瑟夫循环

    JavaCodeTra 猴子选猴王 约瑟夫循环

  • Java XLSTransformer生成excel文件

    Java XLSTransformer生成excel文件把页面的数据导出excel数据 然后进入struts2action packagecomxx.emidas.activity.activity.ajax;importcom.xx.combiz.spring.util.LionConfigUtils;importcom.xx.e

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号