基于python指定包的安装路径方法

yipeiwu_com5年前Python基础

通常python安装包都会被默认装在/usr/local/pythonx/lib/site-packages(linux),但是我们有时想自定义包的安装路径,比如自己项目的某个路径,这样在部署的时候就不用再安装了,大家都知道,java就是这么做的,java项目都是把依赖的lib放到一个目录,不然编译都没法通过,那么在python,我们能不能这样做呢,答案是可以的。

在easy_install的官方文档中,介绍了三种方法来自定义包的安装路径,分别如下:

1、使用--user参数

使用--user参数后,easy_install 会自动在家目录~/下创建一个.local/lib/pythonxx/site-packages/目录,然后把包装到里面。比如装django 那么只需easy_install --user django==2.0,或者pip install django==2.0 --user,如果是下载的源码,就是python setup.py install --user。

2、使用环境变量PYTHONUSERBASE和--user结合的方式

第一种方法虽然更换了目录,但是还是固定的,通过PYTHONUSERBASE这个环境变量(不知道什么是环境变量或不知道怎么设置的可以百度一下:)),则可以自定义目录,比如我的项目目录是/opt/project,然后我把PYTHONUSERBASE环境变量  设置为/opt/project/third/那么结合--user参数后,包就被安装在了/opt/project/third/lib/pythonxx/site-packages下了,当然后面多了几级目录,无伤大雅。

3、使用virtualenv

这个大家都应该比较熟悉了,我这里就不赘述了。

好的,以上就是自定义安装包路径的三种方式,希望可以帮到大家。希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python数据类型学习笔记

Python数据类型学习笔记

带你走进数据类型 一:整数、浮点数 Python中整数和浮点数的定义以及运算和C++都是一样的,我在这里就不需多说了,我就说明一点:Python相对于C/C++而言,定义整数没有int...

详解Python locals()的陷阱

在工作中, 有时候会遇到一种情况: 动态地进行变量赋值, 不管是局部变量还是全局变量, 在我们绞尽脑汁的时候, Python已经为我们解决了这个问题. Python的命名空间通过一种字典...

python实现批量注册网站用户的示例

如下所示: # -*- coding:utf-8 -*- import random,urllib,urllib2 import re,time x=input("请输入需要注册...

Linux下用Python脚本监控目录变化代码分享

#!/usr/bin/env python #coding=utf-8 import os from pyinotify import WatchManager, Notifier...

解决python删除文件的权限错误问题

使用os.remove删除文件,总是遇到错误:PermissionError: WinError 找了很久没找到什么原因,以为是windows系统的问题,最后发现是删除了一个没有关闭的文...