首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python36._pth未被识别

python36._pth未被识别
EN

Stack Overflow用户
提问于 2017-04-18 07:02:15
回答 1查看 468关注 0票数 1

我在没有管理员权限的情况下安装的windows上使用python36。

我创建了一个简单的脚本tester.py

代码语言:javascript
复制
import petl as etl
fnar = [['foo','bar'],
        ['weebl','woobl']]
print(etl.fromcolumns(fnar).lookall())

在命令行中,我将petl安装到一个目录中。

pip install petl -t lib

当我检查的时候,它就在里面。

代码语言:javascript
复制
2017-04-17  06:27 PM    <DIR>          petl
2017-04-17  06:27 PM    <DIR>          petl-1.1.1.dist-info

我想使用这个目录来查找我的python36._pth file,所以我创建了一个petl。

代码语言:javascript
复制
.
lib
import site

当我尝试运行我的脚本时,它找不到它!

代码语言:javascript
复制
>py tester.py
Traceback (most recent call last):
  File "tester.py", line 2, in <module>
    import petl as etl
ModuleNotFoundError: No module named 'petl'

关于让._pth文件正常工作,我有什么误解吗?

EN

回答 1

Stack Overflow用户

发布于 2017-04-26 08:31:52

不幸的是,只有将.pth文件放在python -m site显示的标准位置之一,而不是当前工作目录中,才会对其进行评估。我不记得细节了,但我想Python首先会遍历这些标准位置,运行它在那里找到的任何.pth文件,然后将'' (当前工作目录)添加到sys.path的开头。这意味着您不能仅仅通过在启动脚本的目录中添加一个.pth文件来扩展路径。

据我所知,将相对位置添加到系统路径的唯一方法是将它们设置在主脚本的顶部,在import语句之前。在这种情况下,您可以使用类似于sys.path.append( os.path.join(os.path.dirname(__file__), 'lib'))的代码来完成此操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43460976

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档