python,pip包管理工具

Posted anyux

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python,pip包管理工具相关的知识,希望对你有一定的参考价值。

使用douban源下载python包

标签(空格分隔): 未分类


豆瓣源作为下载源

豆瓣下载地址:http://pypi.douban.com/simple
1、使用pip下载时指定使用豆瓣源作为下载源(这里我们下载tornado)

pip install tornado -i http://pypi.douban.com/simple

技术图片

解决方法:

明显看到提示信息中有不信任douban这个下载源,那么我们要给他一个信任动作

pip install tornado -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

技术图片

我们在使用pip工具下载tornado时遇到了一个问题,pip没有安装-。-现在安装下pip

提前准备了一个get-pip.py安装包(自己从网上找去)

同样使用我们的douban源来安装它(有依赖),一条命令搞定了

python get-pip.py -i http://pypi.douban.com --trusted-host pypi.douban.com 

3、现在已经学会使用国内douban源下载python包了,但是又遇到个问题,难道每次下载都要执行那么一大长串命令么-。-

我们当然有解决方法,看下面

第一步:

创建配置文件

/root/.pip/pip.conf

这个配置文件连目录都不存在,需要手动去创建,不要意外

第二步:

在配置文件中写点东西,具体什么意思自己看

[global]
index-url = http://pypi.douban.com/simple
[install]
trusted-host = pypi.douban.com

第三步

你可以正常使用了,例如

python pip 的安装、更新、卸载、降级、和使用 pip 管理包

安装 pip

官网的安装方式(推荐)

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py

Linux apt 安装

sudo apt-get install python-pip

更新 pip

pip install --upgrade pip
#
pip install -U pip

卸载 pip

sudo apt-get remove python-pip

pip 版本降级

python -m pip install pip==版本(如:9.0.3)

使用 pip 管理包

列出已安装的包

pip freeze 或 pip list

pip freeze
pip freeze 可用于导出已安装的包及其版本并保存为文件,如下:
pip freeze > 文件名(如 requirements.txt)
保存的文件(requirements.txt)可以直接用于安装或卸载,如下:
pip install -r requirements.txt
pip uninstall -r requirements.txt

安装包

pip install 包名

安装特定版本的包

pip install 包名==版本

其他版本范围控制符号: ==、>=、<=、>、<
pip install 包名 # 最新版本
pip install 包名==版本 # 指定版本
pip install ‘包名>=版本’ # 最小版本

升级包

pip install --upgrade 包名
#或
pip install -U 包名

卸载包

pip uninstall 包名

使用国内源

sudo pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 包名

查看python中模块的所有方法

pydoc modules

>>> help("modules")

#python的sys模块也是可以用来查看模块信息的

import sys
sys.modules.keys()

命令行下使用pip查看

如果你使用的是pip来作为你的python包管理器的话,可以在命令行下直接运行pip freeze或者
pip list来查看安装包的信息,当然其它的包管理器也有类似的功能,同时,你也可以在python交互式解释器中导入pip模块来查看包信息

import pip
installed_packages = pip.get_installed_distributions()
installed_packages_list = sorted(["%s==%s" % (i.key, i.version)
     for i in installed_packages])
print(installed_packages_list)

使用yolk来查看

如果你安装过yolk的话可以使用yolk命令来查看包信息,你可以使用$ pip install yolk来安装它yolk使用简单,只需在命令行下操作即可

$ yolk -l    #列出所有安装模块
$ yolk -a    #列出激活的模块
$ yolk -n    #列出非激活模块
$ yolk -U [packagename]  # 通过查询pypi来查看(该)模块是否有新版本

安装pyodbc包

sudo apt-get install unixodbc-dev

解决 Command "python setup.py egg_info" failed with error code 1 问题

pip install --upgrade setuptools
python -m pip install --upgrade pip

输入pip命令报错:from pip import main ImportError: cannot import name ‘main‘

错误连接

qly@qlyComputer:~$ pip
Traceback (most recent call last):
  File "/usr/bin/pip", line 9, in <module>
    from pip import main
ImportError: cannot import name 'main'

主要是由于ubuntu升级pipd版本后导致的

注意:由于若/usr/bin/pip3是只读文件,不加sudo ,可能会提示权限不足,若在只读权限下强制保存会导致文件受损,建议修改配置文件时先查看是否具有权限
修改的内容如下:

原文:from pip import main 
修改后:from pip._internal import main

然后运行pip还是会报错,继续更改配置文件

然后用相同命令把pip配置文件进行更改

vi /usr/bin/pip

修改的内容如下:

//修改前
from pip import main  
if __name__ == '__main__':  
    sys.exit(main()) 
修改后
from pip import __main__  //这行也要修改
if __name__ == '__main__':  
    sys.exit(__main__._main())//增加__main__._

解决_blocking_errnos = {errno.EAGAIN, errno.EWOULDBLOCK} pip 问题

 python2.6 get-pip.py 报错下面的错误
_blocking_errnos = {errno.EAGAIN, errno.EWOULDBLOCK} pip
解决方案:
# 1, 从官方github获取具体版本的pip
wget  https://raw.githubusercontent.com/pypa/get-pip/master/2.6/get-pip.py
# 2,运行刚才获取的pip文件
 python2.6 get-pip.py

安装指定pip版本,python2.6.6在pip10之后不支持。

https://pypi.org 前往网站下载所想要的版本的pip

查看相应的历史版本

用apt-get安装pip

sudo apt-get remove python-pip

但是有时通过apt-get安装的pip版本太老了,使用旧版本pip安装一些包时会报出提醒来升级pip。如果想升级最新的pip,需要先卸载pip,命令为

sudo apt-get remove python-pip

然后在按照下面的方法用源码安装pip.

源码安装pip

到 https://pypi.python.org/pypi/pip 这个网站下载对应版本的源码,推荐为这种压缩格式的:pip-9.0.1.tar.gz,然后到下载目录下,解压并进入文件:

tar -xzvf pip-9.0.1.tar.gz
cd pip-9.0.1
sudo python setup.py install

pip安装失败(总是Retry)

在使用 pip install 总是出现如下错误:
技术图片

镜像过慢

pip install -i https://pypi.douban.com/simple django 

域名无法解析

vim /etc/resolv.conf

#添加如下几行,

nameserver 8.8.4.4
nameserver 8.8.8.8

python利用pip安装包注意事项

需要把pip升级后再安装

相关命令

python -m pip install --upgrade pip
pip install --upgrade pip
pip install --upgrade wheel
pip3 install aiohttp

#例如安装图像包
pip install Pillow

#安装mysql
pip install mysql-connector-python-rf --allow-external mysql-connector-python

#安装sqlalchemy--ORM数据库

 pip install sqlalchemy

解决‘python -m pip install --upgrade pip‘ 报错问题

再安装包的时候提示

You are using pip version 9.0.3, however version 10.0.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

而我按照要求运行python -m pip install --upgrade pip 后仍然无法成功升级,提示如下:

(venv) D:Fish>python -m pip install --upgrade pip
Requirement already up-to-date: pip in d:fishvenvlibsite-packages (10.0.1)

于是按照要求将d:fishvenvlibsite-packages (10.0.1) 中的pip-10.0.1.dist-info删除,再次运行python -m pip install --upgrade pip 后升级成功,之前不能安装的包也能安装了!

window配置pip国内源

文件夹窗口输入 : %APPDATA%
新建pip文件夹
创建pip.ini文件
输入以下内容:

[global]

timeout = 6000

index-url = http://pypi.douban.com/simple

trusted-host = pypi.douban.com

缺少 zlib模块

安装报错

Compression requires the (missing) zlib module  

缺少 zlib模块导致安装失败

yum install zlib zlib-devel -y
#重新执行
make && make install 
python ./setup.py install

缺少 mysql-devel模块

报错

EnvironmentError: mysql_config not found

常用解决方法

yum install mysql-devel

未解决的,参考以下描述
rpm -qa | grep mysql 查找与mysql版本相应包
下载对应版本的mysql-devel,http://rpm.pbone.net/

rpm -ivh ftp://mirror.switch.ch/pool/4/mirror/mysql/Downloads/MySQL-5.6/mysql-community-devel-5.xxxxx.x86_64.rpm

再次安装

pip install mysql-python

报错error: command ‘gcc‘ failed with exit status 1

centos需要安装python-devel,ubuntu需要安装python-dev,但不能解决问题
当前使用的是python2.7版本,yum install -y python2-devel
若使用的是python3.6版本,yum install -y python3-devel
或许会使用到小版本号如 yum install -y python3.6-devel

国内源镜像有:

V2EX:http://pypi.v2ex.com/simple
豆瓣:http://pypi.douban.com/simple
中国科学技术大学:http://pypi.mirrors.ustc.edu.cn/simple/
清华:https://pypi.tuna.tsinghua.edu.cn/simple

以上是关于python,pip包管理工具的主要内容,如果未能解决你的问题,请参考以下文章

python包管理工具 pip

python,pip包管理工具

python包管理工具pip download详解

python包管理工具pip的使用

python 包管理工具 pip 的配置

工具安装-CentOS-安装python包管理工具pip