基于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 面向对象之封装、继承、多态操作。分享给大家供大家参考,具体如下: 封装、继承、多态 是面向对象的3大特性 为啥要封装 好处 在使用面向过程编程时,当需要对...

python中列表和元组的区别

如果有了解过python中的列表和元组,你可能会知道相对于列表,元组是不可变的,也就是说元组中的数据不能随意更改。除了列表是用中括号表示而元组是用小括号表示之外,这两种数据类型好像并没有...

node.js获取参数的常用方法(总结)

1、req.body 2、req.query 3、req.params 一、req.body例子 body不是nodejs默认提供的,你需要载入body-parser中间件才可以使用re...

对python中的*args与**kwgs的含义与作用详解

在定义函数的时候参数通常会使用 *args与**kwgs,形参与实参的区别不再赘述,我们来解释一下这两个的作用。 *args是非关键字参数,用于元组,**kw是关键字参数 例如下面的代...

使用python实现简单五子棋游戏

使用python实现简单五子棋游戏

用python实现五子棋简单人机模式的练习过程,供大家参考,具体内容如下 第一次写博客,我尽力把它写好。 最近在初学python,今天就用自己的一些粗浅理解,来记录一下这几天的pytho...