我想在我们的Anacoda文件夹中使用我们正在使用的外部库(在本地开发)。我知道简单的方法是将包直接放入C:/Users/XXX/AppData/Local/Continuum/Anaconda2/Lib/site-packages
。
但是我需要将图书馆保存在不同的地方。其中一个answers建议在.pth
中创建一个site-packages
文件,这是我喜欢的解决方案。因此,我创建了文件name.pth
,其中有一行包含库C:/path to/whatever/library
的路径。但是,如果我重新启动Spyder并尝试导入库,则会出现错误
ImportError:没有名为XXX的模块
我想我可能以错误的方式指定了路径?路径中还有一个空白区域。也许那可能是个问题?
[Python 2.7 with Anacodna distribution 4.3.17,Windows 7]
修改
到目前为止,我发现我可以在.py
文件夹中创建一个site-packages
文件,其中包含以下内容:
# make path
import sys
sys.path.append('C:/path to/whatever/library')
from packageA import A1, A2, A3
from packageB import B1, B2, B3
如果我保留相同的名称,导入工作正常。但是每次我添加新的包或函数时,都必须更新.py
文件,这真的很烦人。
答案 0 :(得分:2)
所以最后我找到了解决.pth
解决方案的方法。问题出在文件夹结构中。如果.pth
文件如下所示:C:/path to/whatever/library_name
,则库的目录必须如下所示:C:/path to/whatever/library_name/library_name
。
基本上,不必指向文件,必须指向包含文件的文件夹。愚蠢的错误。