在python项目中导入数据库的最佳方法
我正在开发一个python应用程序,它可以连接到几个不同的数据库。我希望我的项目中的不同包能够使用数据库功能。如何创建一个可以使用的“全局”包,而不是在每个包中创建数据库逻辑?下面是我正在考虑使用的结构示例:在python项目中导入数据库的最佳方法,python,python-2.7,Python,Python 2.7,我正在开发一个python应用程序,它可以连接到几个不同的数据库。我希望我的项目中的不同包能够使用数据库功能。如何创建一个可以使用的“全局”包,而不是在每个包中创建数据库逻辑?下面是我正在考虑使用的结构示例: main.py package1/ __init__.py stuff1.py stuff2.py package2/ __init__.py moar1.py moar2.py
main.py
package1/
__init__.py
stuff1.py
stuff2.py
package2/
__init__.py
moar1.py
moar2.py
database/
__init__.py
dbfunctions.py
我希望能够使用stuff和moar文件中的数据库函数,而无需从main.py调用它们。我希望能够在包中编写数据库逻辑、sql等,并根据main.py的调用独立运行它们
问题:如何将数据库函数导入package1和package2?我想从同级目录导入数据库项。
(另外,我更熟悉使用PHP,刚开始使用python,因此如果我完全走错了路,我还没有开始编写应用程序。完全接受不同的结构建议。)要从同级目录导入,同级包需要是父包的一部分 将布局更改为:
wholeproject/
__init__.py
main.py
package1/
__init__.py
stuff1.py
stuff2.py
package2/
__init__.py
moar1.py
moar2.py
database/
__init__.py
dbfunctions.py
然后,在main.py中,您可以像这样导入内容和呻吟:
from wholeproject.package1 import stuff1
from wholeproject.package2 import moar1
from wholeproject.database import dbfunctions
在stuff1中,您可以获得如下函数:
from wholeproject.package1 import stuff1
from wholeproject.package2 import moar1
from wholeproject.database import dbfunctions
或者您可以根据需要获取单个函数。。。但这应该让你开始。你差点就成功了 您是否尝试过上述解决方案,如果是,您到底有什么问题?对不起,我想我忘记问我的问题了。上面用黑体标出。测试一下,然后用一个具体的问题或问题汇报。我想是的。如何从同级目录导入数据库函数?啊,我不知道我必须为父目录创建一个包。。。非常感谢。