通过提供sys路径来使用包

时间:2015-12-19 00:43:52

标签: python

我遇到了这个链接:

(Python) Use a library locally instead of installing it

然后按照步骤提供我在桌面上下载和提取的IBPy包的路径。

我的代码如下:

import sys
sys.path.append('C:\Users\Duck\Desktop\IbPy-0.7.6-9.51\build\lib\ib')
import IbPy

但第三行的错误是:没有名为IbPY的模块。我在IbPy的路径上尝试了不同的变体:C:\ Users \ Duck \ Desktop \ IbPy-0.7.6-9.51

有什么建议吗?我的问题是我无法在本地安装软件包。我唯一能做的就是通过USB带来包裹。

编辑:

(1)是的,有 init .py文件

(2)我现在正在使用

sys.path.append(r'C:\Users\Duck\Desktop\IbPy-0.7.6-9.51\build\lib\ib')

错误仍然存​​在。

我正在使用Pycharm作为我的编辑,我从以下网站下载了IBPy:

https://github.com/blampe/IbPy

2 个答案:

答案 0 :(得分:3)

对Windows路径使用原始字符串。 \b被解释为退格符。

r'C:\Users\Duck\Desktop\IbPy-0.7.6-9.51\build\lib\ib'

应该有效。除了字符串的引号字符之外,原始字符串阻止对反斜杠转义的解释。

答案 1 :(得分:1)

包是最浅的目录,带有__init__.py,目录名是包名。 sys.path需要在包目录之前包含目录,因为python会将包名附加到sys.path中的名称,直到找到匹配为止。由于目录ib包含您需要的包__init__.py

import sys
sys.path.append(r'C:\Users\Duck\Desktop\IbPy-0.7.6-9.51\build\lib')
import ib