Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用_uinit_uuuu.py简化导入_Python_Import - Fatal编程技术网

Python 如何使用_uinit_uuuu.py简化导入

Python 如何使用_uinit_uuuu.py简化导入,python,import,Python,Import,如果我有这样的文件结构: file.py utils - __init__.py - db.py - config.py db.py看起来像这样 class DbClass(): #class definition ... 然后在file.py中,我可以使用以下方法导入DbClass: from utils.db import DbClass import utils.DbClass 我知道我可以编辑_init _u; py来更改导入内容的方式,但我很难理解它

如果我有这样的文件结构:

file.py
utils
  - __init__.py
  - db.py
  - config.py
db.py看起来像这样

class DbClass():
  #class definition
  ...
然后在file.py中,我可以使用以下方法导入DbClass:

   from utils.db import DbClass
import utils.DbClass
我知道我可以编辑_init _u; py来更改导入内容的方式,但我很难理解它

我可以向uuu init_uuuuuuuu.py添加什么,以便使用以下命令导入Db类:

   from utils.db import DbClass
import utils.DbClass
编辑:

也许那是不可能的

有没有办法让import utils.db像from utils.db import DbClass一样工作?

DbClass不是一个模块,您只能使用from x import y导入它。而是在file.py中写入

在utils/\uuuu init\uuuuu.py中


导入utils.DbClass-这不起作用。您可以从utils import DbClass或import utils和utils.DbClass获得工作,但import utils.DbClass的语法错误。如果导入utilsth,则存在utils.DbClass。没有其他事情需要发生。在封面下,python添加了从_init _; py.py到模块名称空间的所有内容。我想没有比这更一般的了。因此,如果我在utils中有几个文件,我会为每个文件添加该行吗?是的,如果你想在utils模块中直接显示类或对象,你必须在_init__; py.py中导入它们