首页 > 解决方案 > 在 Python 3.7 中使用 __init__.py 文件导入 *

问题描述

首先这里是我的目录结构:

Root
   - models 
        car.py 
        __init__.py 
   hello.py 

里面__init__.py我有以下内容:

__all__ = ["car"]

在里面hello.py我尝试从模型文件夹中导入所有内容:

from models import *

car = Car()

这给了我错误:

Traceback (most recent call last):
  File "hello.py", line 4, in <module>
    car = Car()
NameError: name 'Car' is not defined

我究竟做错了什么?

标签: pythonpython-3.xpackagepython-modulepython-3.7

解决方案


您必须指定要导入文件属性__all__的类__init__.py。请参见下面的示例:

from car import *
__all__ = ["Car"]

推荐阅读