pip安装包位置问题
pip install package location issues
我已经制作了一个包并使用 pip 安装它(已经创建了一个 sdist 包)。但是,当我执行同时安装的脚本时 /usr/local/bin/
它会出错,因为它试图导入的模块也已安装 /usr/local/lib/python2.7/site-packages/MyApplication/Modules/
有没有办法让 pip 安装执行路径到正确的位置所以当我从终端(任何目录)执行脚本时它从正确的位置运行?
我自己已经回答了这个问题,为了简洁起见,我把答案贴出来以防其他人遇到同样的问题。
在导入模块之前,我检查了模块目录的安装位置。然后我将其添加到 sys.path
。这非常有效。
sites = site.getsitepackages()
for item in sites:
if os.path.exists(item + "/PackageName/modules/__init__.py"):
path = item
sys.path.append(path + '/PackageName/')
我已经制作了一个包并使用 pip 安装它(已经创建了一个 sdist 包)。但是,当我执行同时安装的脚本时 /usr/local/bin/
它会出错,因为它试图导入的模块也已安装 /usr/local/lib/python2.7/site-packages/MyApplication/Modules/
有没有办法让 pip 安装执行路径到正确的位置所以当我从终端(任何目录)执行脚本时它从正确的位置运行?
我自己已经回答了这个问题,为了简洁起见,我把答案贴出来以防其他人遇到同样的问题。
在导入模块之前,我检查了模块目录的安装位置。然后我将其添加到 sys.path
。这非常有效。
sites = site.getsitepackages()
for item in sites:
if os.path.exists(item + "/PackageName/modules/__init__.py"):
path = item
sys.path.append(path + '/PackageName/')