python-2.7 - 如何在没有 pip 或任何包管理器的情况下安装 Pandas 和依赖项
问题描述
我公司的 linux 开发环境没有安装 pip 或任何包管理器。我如何在没有 pip/包管理器的情况下安装或使用 pandas 包和依赖项,如 numpy 等。
解决方案
您可以在沙箱(用于将这些库与生产内容分开的目录)上使用python 轮进行本地安装,并通过在您的.PYTHONPATH
实际上,轮子基本上是 .ZIP 文件,其中包含已为您的平台(Python 版本、操作系统和 CPU 架构)编译的具有本机依赖项(例如从 C 源代码生成的目标文件)的 python 包。
首先要做的是创建一个单独的目录来保存包:
mkdir -p /full/path/to/my/pandas_sandbox
转到 PyPI 网站并下载 Pandas 及其依赖项:
你会注意到其中一些,即 Pandas 和 Numpy,有很多选择。
在选择包时,特别是对于 Pandas 和 Numpy,您需要考虑轮子命名约定,因此请确保获得与您的 python 版本和 CPU 架构相匹配的轮子。
例如,如果您需要 Pandas 在 x86_64 上运行的 Linux 上以 Python 2.7 为目标,请选择pandas-0.23.3-cp27-cp27mu-manylinux1_x86_64.whl
(注意cp27、manylinux1和x86_64)。
确定您的目标平台并下载 Pandas 和 Numpy 的特定版本。
一旦你有了包(.whl
文件),将它们解压缩到沙箱目录中,根据我使用当前有效版本的实验,你最终会得到:
.
├── dateutil
├── numpy
├── numpy-1.15.0.data
├── numpy-1.15.0.dist-info
├── pandas
├── pandas-0.23.3.dist-info
├── pytz
├── pytz-2018.5.dist-info
├── six-1.11.0.dist-info
└── six.py
现在,将路径添加到您的沙盒目录PYTHONPATH
:
export PYTHONPATH=/full/path/to/my/pandas_sandbox
这将使/full/path/to/my/pandas_sandbox
python 下的包可见,因此您可以将它们作为已安装的依赖项使用和导入。
例子:
$ export PYTHONPATH=/full/path/to/my/pandas_sandbox
$ python
Python 2.7.12 (default, Dec 4 2017, 14:50:18)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import pandas
>>> pandas.__file__
'/full/path/to/my/pandas_sandbox/pandas/__init__.pyc'
>>>
笔记:
1) 请记住,这不是维护 Python 环境和依赖项的推荐方法。
2) 请记住,export PYTHONPATH=/a/given/path
如所示,仅对当前 shell 会话有效,因此您可以在新 shell 上保持 python 安装干净。例如,您可以通过将其添加export
到您.bashrc
的 .
推荐阅读
- excel - Power Query - 在组函数中计算列中的非空白
- swift - 是否可以从 AppStore 访问 iOS 应用程序的控制台日志?
- python - 从另一个数组分配一个数组 [加密器问题]
- java - 定义返回列表的 REST 端点
- powershell - Powershell New-Service 授予权限被拒绝
- xamarin - 如何从 Xamarin.ios 中的超链接 UITextView 控件中删除下划线?
- javascript - SharePoint 2013 - 使用 JavaScript 覆盖字段
- wpf - 基于 XAML 中的属性将样式应用于按钮
- mysql - 引导表不显示数据
- python - 在 NLTK 中使用 shif-reduce 解析器尽可能多地解析句子?