繁体   English   中英

尝试在根目录中导入脚本时出错

[英]Error when trying to import script in root directory

我有以下目录结构:

├── __init__.py
├── http
│   ├── __init__.py
│   ├── web.py
└── test
    ├── __init__.py
    ├── app.py

在app.py文件中:

from http import web

当我尝试运行时(在根目录中):

 python test/app.py 

我收到以下错误:

ImportError: no module named http

我知道我可以使用:

python -m test.app

但是,还有另一种方法吗?

当您运行python path/to/script.py ,python将包含script.py的目录添加到模块搜索路径,但不会神奇地添加其他任何内容。 因此,当您运行python test/app.pyapp.py尝试import http ,找不到该位置,因为http模块不在搜索路径中的任何位置。 解决此问题的简单方法是:

PYTHONPATH=$PWD python test/app.py

这会将您的当前目录添加到模块搜索路径。 假设当前目录是包含http模块的目录,这将允许app.py成功导入http

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM