相关疑难解决方法(0)

Python:如何成功继承Sqlite3.Cursor并添加我自定义的方法

我想制作自己的 MagicCursor 课程。我希望它从 sqlite3.Cursor() 继承所有方法和属性。但在他的情况下看起来并不那么容易。

通常我们会像这样创建一个游标:

import sqlite3
conn = sqlite3.connect('test.db')
crs = conn.cursor()
Run Code Online (Sandbox Code Playgroud)

因为这中间有联系。所以我想我必须定义我自己的Connection Class,然后定义我自己的Cursor。

这是我想要实现的:

import sqlite3
conn = MyConnect('test.db') ## this returns me a connect object, inherit from         sqlite3.Connection 
crs = conn.cursor() ## this returns me a MyCursor class,
                ## which inherit from sqlite3.Cursor() and has my customized method
Run Code Online (Sandbox Code Playgroud)

这是我的代码,但失败了。

class MyConnect(sqlite3.Connection):
    def cursor(self):
        return MyCursor(self)

class MyCursor(sqlite3.cursor):
    def __init__(self, connect):
        self = connect.cursor()

    def mymethod1(self, argv)
         ...... return ...... ## what ever I defined
Run Code Online (Sandbox Code Playgroud)

任何人都知道如何实现它?

python sqlite

2
推荐指数
1
解决办法
1274
查看次数

标签 统计

python ×1

sqlite ×1