如何使用Portable Python安装外部库?

时间:2013-04-23 14:14:06

标签: python numpy installation portability

由于管理员权限,我无法在我的机器上安装Python,但我成功下载/打开了Portable Python。我在Windows 7 64位机器上。我怎样才能使用之前的外部库,例如Numpy或Gmpy?

4 个答案:

答案 0 :(得分:4)

easy_install正在尝试从源代码安装。 gmpy和gmpy2是C扩展,需要兼容的C编译器和其他库(GMP;以及gmpy2的MPFR和MPC)的存在。在Windows上,从源代码安装通常很困难。安装程序包含扩展的预编译版本。

一种选择是从安装程序中提取已编译的二进制文件。 7-Zip能够打开安装程序文件,您可以提取二进制文件。在标准的Python安装中,提取的二进制文件只需要放在site-packages目录中。如有必要,您可以在另一个系统上进行提取并复制该文件。

您还可以使用zipfile模块提取已编译的扩展名。这是一个例子。您需要修改确切的文件位置以反映您的系统。

>>> import zipfile
>>> f=zipfile.ZipFile('gmpy2-2.0.0.win-amd64-py3.3.exe','r')
>>> f.namelist()
['PLATLIB/gmpy2-2.0.0-py3.3.egg-info', 'PLATLIB/gmpy2.pyd']
>>> f.extract('PLATLIB/gmpy2.pyd')
'C:\\Python33\\PLATLIB\\gmpy2.pyd'

答案 1 :(得分:1)

执行以下操作:

  • 查找所需软件包的已编译版本--Christoph Gohlke保留了一个优秀的集合here - 下载并将其放在一个文件夹中(比如C:\ temp)。
  • 在您的Portable Python安装中找到Scripts文件夹(通常位于Apps文件夹下)并在那里打开命令提示符。
  • 从Scripts文件夹中输入命令easy_install C:\temp\numpy-MKL-1.8.0.win32-py2.7.exe(更改安装程序名称的exe文件名)。

测试安装是否成功:

>>> import numpy
>>> print numpy.__version__
1.8.0

答案 2 :(得分:0)

请参阅https://groups.google.com/forum/?fromgroups#!topic/portablepython/BVQOHFNXilU

根据这一点,对于大多数软件包,您应该能够轻松安装到您的Portable Python根文件夹中,然后在python脚本中正常导入它。

答案 3 :(得分:0)

对于大多数外部包,我可以按如下方式导入它们:

  1. 将来自PyPI上相应.whl文件的包源解压缩为自定义' include'安装了Portable Python的磁盘/棒上的文件夹。
    1. 在我的情况下,这是F:\py\include - 无论你选择什么,确保此文件夹的路径中没有空格或特殊字符,否则便携式Python赢了&#39 ; t在添加到PYTHONPATH时正确解析。
    2. 车轮只是ZIP文件;将.whl重命名为.zip,Windows资源管理器将立即将其打开。
    3. 通常您要检索.whl中的子文件夹,其名称只是您感兴趣的包名:numpysympy等。
  2. 将此include文件夹的路径添加到PYTHONPATH环境变量:
    1. 在Windows资源管理器中,右键单击'计算机'并选择'属性'
    2. 这有点依赖于版本,但请选择类似'高级系统设置' (Win7)或者表演'或者'高级'标签(WinXP)。
    3. 点击环境变量'
    4. 在'系统变量'下,查找PYTHONPATH。如果有,请选择它并点击“编辑”。'如果没有,请点击“新建'。
    5. 如果您要将其添加为新内容,请键入PYTHONPATH作为变量名称。'无论哪种方式,请将自定义包含文件夹的路径添加到“变量值”中。'如果其他路径已经在那里,请使用分号将您的路径与之前的路径分开。 不要在分号和新路径之间留一个空格!便携式Python显然将前导空格的条目解释为 relative paths ,引用文件夹是Portable Python安装文件夹。
    6. 点击'确定'根据需要保存设置并清除对话框。
  3. 在某些情况下,"正式"安装过程是必需的,这并不总是有效。我认为sympy是我必须在将其转移到F:\py\include之前编译它的一个案例。此外,我特别rough timeh5py,但最终通过将其安装到正常的' Python 2.7的版本并将生成的h5py文件夹复制到F:\py\include