【发布时间】:2024-04-30 14:55:02
【问题描述】:
我是 Python 新手,目前正在尝试为产品开发框架。在类文件 A 中,我编写了数据库访问函数,如插入、删除、选择和更新。在主类文件中,我必须导入所有上述函数并且必须使用 A 类函数。
到目前为止,我做了以下方法, 基类 导入 sqlite3 从 sqlite3 导入错误
class LocalDb:
def insert_method():
pass
将 insert_method 导入到下面的类。 从 access_db.local_db.local_db 导入 LocalDb
class Main():
def __init__(self):
pass
def change(self):
LocalDb.iterate_db()
if __name__ == '__main__':
main = Main()
main.change()
当我厌倦了上面的事情时,我得到“TypeError:必须以 LocalDb 实例作为第一个参数调用未绑定的方法 iterate_db()(而不是获取 classobj 实例)”
还有。我已经尝试过,Main(LocalDb) 用于继承 LocalDd 的方法,但我遇到错误说“sqlite3.OperationalError:没有这样的表:专辑”(但在 db 中,我们在 db 中有“albums”表),我在这里感到困惑当我在 LocalDb 类文件中使用 insert_db 方法时,我得到了预期的结果。
我的问题在这里,
B类中如何导入A类方法,B类中如何调用A类方法?
如果第 1 个问题的答案是继承(多级),那么对于第 1 个问题还有其他解决方案吗?
或者我对继承和将类方法导入一个类感到困惑?还是两者都一样?
即使继承也是我在第二种方法中所做的,我无法点击 iterate_db 方法(它会引发错误。)如何在子类中调用父方法?
请有人帮我解决这个问题。
【问题讨论】:
标签: database python-2.7 inheritance sqlite