我如何用很多文件来构造我的Python子模块,所以我只需要导入一个模块

lxg95

我有一个名为Python项目osinttool,其中包含一个名为osinttool.py文件的文件在此文件夹中,我有一个名为database的文件夹,其中包含一个名为db.py的文件,并且有一些函数可以在数据库中创建条目,删除它们等等。在我的其他文件中,我只是这样导入,'from database import db'所以效果很好。

问题是,db.py中有很多代码,我想拆分代码,以便每个不同的资源都有自己的文件,但是我仍然只想导入一个模块以使用所有这些数据库功能。如果我什至不必更改使用DB模块的文件中的任何内容,那就太好了。

我该怎么办?

喷枪

我建议将db其本身转换为具有以下目录结构__init__.py的程序包,包括提供程序包公共API文件。

- db
    - __init__.py
    - dbtools.py

假设您dbtools.pydb包中有一个模块,它定义了一个function initialize_db_connection然后,您可以__init__.py在相同级别创建一个文件,其内容如下:

from .dbtools import initialize_db_connection

然后from db import initialize_db_connection,即使函数在软件包的模块内,也可以将其导入为

在已经导入为的模块中from database import db,您的功能可以通过来访问db.initialize_db_connection

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我是否需要直接导入子模块?

我应该如何在模块中导入另一个python文件

从我的模块中的另一个文件夹在 python 中导入模块函数

我只需要在我的表中选择一个破折号

是否需要多个<meta>标签,还是我只需要一个?

所以我要做一个grep或sed?

在文本文件中,我只需要打印最后一个字符

所以我有一个带有段落的HTML文件,我需要分成三行,但我只能修改CSS。我要如何做到这一点?(下面的代码)

Angular 2 - 如何创建一个我只需要加载一次的全局服务

仅当我的模块需要某个对象时,如何触发另一个模块的延迟导入?

给定一个值或常量,我只需要在Pandas上输出相关行

DataTable单个列搜索,我只需要一个选择输入

在C:2中,我只需要一个printf输出。

提交按钮在表格数据下呈现。我只需要一个提交按钮

熊猫“对象”系列不会转换为日期时间,我只需要一个小时

好的,所以我创建了这段代码来创建一个 GUI,但我需要添加按钮,当我尝试时它会创建一个新窗口。我应该怎么办?

所以我想用Python制作一个同时显示AM和PM的时钟

在我的情况下,只需要在我的列表视图中显示一个对象(仅title)

使另一个模块可从我的Python模块导入

我只需要使用另一个列表中的重复项创建一个列表

我如何做到这样我只需要引用一次我的 api 密钥?

如何我设置为循环,所以我可以选择每个问题一个单选按钮?

当我只需要返回一个值时,是否需要v8 HandleScope?

如何在构造函数的控制器中调用模型,因为我只需要编写一次

我只需要Oracle sdo_nn Update语句中的一个唯一结果,

我需要添加子模块文件夹到.gitignore吗?

python将所有模块导入到一个python文件中,我们可以将其导入另一个文件中?

Perl:给定一个文本文件,我只需要在矩阵中保存包含某个单词的文本行

Python - 搜索一个词,但两个相似,所以我得到了两个