首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python3测试文件夹导入问题

Python3测试文件夹导入问题
EN

Stack Overflow用户
提问于 2019-10-26 00:52:49
回答 1查看 44关注 0票数 0

尝试使用文件夹结构在Python3中编写测试

代码语言:javascript
复制
package/
    __init.py__
    Foo.py
    Bar.py
test/
    __init.py__
    test_Foo.py

Foo.py

代码语言:javascript
复制
import Bar

test_Foo.py

代码语言:javascript
复制
import Foo

No module named Foo中运行python3 -m unittest结果

如果我将其更改为

代码语言:javascript
复制
from package import Foo

它可以解决,但在Foo.py中它会有错误No module named 'Bar'

如果我将Foo.py更改为

代码语言:javascript
复制
from package import Bar

测试将在没有错误的情况下运行,但是运行python3 Foo.py将导致No module named 'package'

关于这类问题,我已经看过了各种各样的答案,比如下面这个

Running unittest with typical test directory structure

还有这个

Python3 import modules from folder to another folder

而且他们都没有解决这个问题

EN

回答 1

Stack Overflow用户

发布于 2019-10-26 01:04:40

您的项目根目录(以及工作目录!)需要是包的

那么每个import都将以import package.modulefrom package import module的形式出现。

如果你运行python packgae/Foo.pypython -m package.Foo,它应该可以工作。

还可以查看pypa - sample project,以查看推荐的Python项目结构。

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

https://stackoverflow.com/questions/58562696

复制
相关文章

相似问题

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