pip install如何指定包的安装路径

 更新时间:2022年06月30日 09:47:52   作者:sueong  
最近学习python需要用pip下载一些包,但是发现下载后在pycharm中根本导入不了,下面这篇文章主要给大家介绍了关于pip install如何指定包的安装路径的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

pip install指定安装目录

pip install一般会有默认的安装目录,可以通过python -m site进行查看,当然也可以对默认目录进行修改通过pip install --target=path_name package_name

python默认的是系统装的2.7

python3是3.8版本

USER_BASE 和USER_SITE其实就是用户自定义的启用Python脚本和依赖安装包的基础路径。

user_site其实就是个人的site-packages默认安装路径了

/home/szr/.local下的文件

/home/szr/.local/lib/python3.8/site-packages是安装的包

测试pip3 install和pip install的安装路径 ,都是默认用python3.8, 路径在/home/szr/.local/lib/python3.8/site-packages

pip

pip3

输入python3 -m site -help发现配置文件在user-base和user-site的定义在/usr/lib/python3.8/site.py [--user-base] [--user-site]下面

改变pip的安装路径

mkdir packages路径/home/szr/.local/lib/python3.8/
将site.py中原来定义的None(其实最终返回的路径是/home/szr/.local/lib/python3.8/site-packages)改为/home/szr/.local/lib/python3.8/packages

USER_SITE = "/home/szr/.local/lib/python3.8/site-packages "

这个是你要安装下载的site-packages的路径。

而执行下载的pip等脚本路径是由USER_BASE决定,并且一定一定要换到同样的有pip脚本的路径下,这个路径不变。

修改前:

修改后:

pip install numpy

有奇怪的警告但是也成功安装了

distutils:当您决定发布您的模块供其他人使用时,distutils为他们提供了一种标准的方法来在他们的机器上安装您的模块。(“distutils”中的“dist”是指分发,就像将软件分发给其他人一样。)

pip show numpy

装在了之前设定在site.py下的目录:/home/szr/.local/lib/python3.8/packages
说明更改路径成功

打开/home/szr/.local/lib/python3.8/packages 确实存在numpy

dist-packages和site-packages区别

另外:观察site.py 发现有dist-packages和site-packages

/usr/local/lib/python3.8/dist-packages

如果是系统自带的python,会使用dist-packages目录

如果你手动安装python,它会直接使用目录site-packages

这允许你让两个安装隔离开来

dist-packages是特定于Debian的约定,也存在于其衍生版本中,例如Ubuntu。当模块从Debian软件包管理器进入以下位置时,它们将安装到dist-packages中:

/usr/lib/python2.7/dist-packages
由于easy_install和pip是从软件包管理器安装的,因此它们也使用dist-packages,但是它们将软件包放在此处:

/usr/local/lib/python2.7/dist-packages

从Debian Python Wiki:

dist-packages而不是site-packages。从Debian软件包安装的第三方Python软件进入dist软件包,而不是站点软件包。这是为了减少系统Python与你可能手动安装的任何源Python构建之间的冲突。

这意味着,如果你从源代码手动安装Python,它将使用site-packages目录。这使你可以将两个安装分开,特别是因为Debian和Ubuntu在许多系统实用程序中都依赖Python的系统版本。

更改Python的pip install 默认安装依赖路径方法详解

关于anaconda的 https://www.jb51.net/article/149625.htm

总结

到此这篇关于pip install如何指定包的安装路径的文章就介绍到这了,更多相关pip指定包安装路径内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python通过wordcloud库实现将单词生成词云

    Python通过wordcloud库实现将单词生成词云

    Python的wordcloud库是一个用于生成词云的Python包,它可以将一段文本中出现频率高的单词按其出现频率大小以及颜色深浅排列成一个词云图形,从而更好地展示文本中的信息,你可以使用wordcloud库来生成各种类型的词云,本文就介绍了如何生成心型词云
    2023-06-06
  • Python编程中的文件操作攻略

    Python编程中的文件操作攻略

    这篇文章主要介绍了Python编程中的文件操作攻略,包括打开关闭重命名删除等相关函数的使用,需要的朋友可以参考下
    2015-10-10
  • 利用Python将list列表写入文件并读取的方法汇总

    利用Python将list列表写入文件并读取的方法汇总

    因为实验需要,实现了一下写入txt文件,下面这篇文章主要给大家介绍了关于如何利用Python将list列表写入文件并读取的几种方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-03-03
  • Python图片检索之以图搜图

    Python图片检索之以图搜图

    由于很多论文里面的测试图片没有标号,就不能确定它们是Testset数据集中哪几张图片.为了能解决这个问题,需要完成以图片去搜索整个数据集文件目录的任务.本文有非常详细的图文示例,需要的朋友可以参考下
    2021-05-05
  • python命令行运行报错ModuleNotFoundError:No module named‘XXX‘找不到自定义模块

    python命令行运行报错ModuleNotFoundError:No module named‘X

    这篇文章主要介绍了python命令行运行报错ModuleNotFoundError:No module named‘XXX‘找不到自定义模块问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • python粘包问题及socket套接字编程详解

    python粘包问题及socket套接字编程详解

    这篇文章主要介绍了python粘包问题及socket套接字编程详解,之所以出现粘包,是因为两个数据非常小,然后间隔时间又短,或数据太大,一次取不完,下一次还会取这个大数据,需要的朋友可以参考下
    2019-06-06
  • 浅谈numpy中linspace的用法 (等差数列创建函数)

    浅谈numpy中linspace的用法 (等差数列创建函数)

    下面小编就为大家带来一篇浅谈numpy中linspace的用法 (等差数列创建函数)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • 一篇文章让你快速掌握Pandas可视化图表

    一篇文章让你快速掌握Pandas可视化图表

    大家都知道Pandas是基于Python平台的大数据分析与处理的利器,它可以把十分复杂的可视化过程,变得简单一点,这篇文章主要给大家介绍了关于Pandas可视化图表的相关资料,需要的朋友可以参考下
    2021-08-08
  • Python实现对文件进行单词划分并去重排序操作示例

    Python实现对文件进行单词划分并去重排序操作示例

    这篇文章主要介绍了Python实现对文件进行单词划分并去重排序操作,涉及Python文件读取、字符串遍历、拆分、排序等相关操作技巧,需要的朋友可以参考下
    2018-07-07
  • 利用python代码写的12306订票代码

    利用python代码写的12306订票代码

    这篇文章主要介绍了利用python代码写的12306订票代码,自己写的python代码,是非常实用的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-12-12

最新评论