我想添加db-api类型提示,例如:
def test_connect() -> Connection :
...
了解我正在动态加载模块驱动程序(意思是没有像“pyodbc.Connection”这样的硬编码方式),而且在 Python 中没有正式的接口契约。
有什么想法吗?
我想添加db-api类型提示,例如:
def test_connect() -> Connection :
...
了解我正在动态加载模块驱动程序(意思是没有像“pyodbc.Connection”这样的硬编码方式),而且在 Python 中没有正式的接口契约。
有什么想法吗?
Protocol
实现的DBAPI 2.0类。from collections.abc import Sequence, Mapping
from typing import Any, Protocol
class Connection(Protocol):
def close(self) -> None:
...
def commit(self) -> None:
...
def cursor(self, *args, **kwargs) -> Cursor:
...
class Cursor(Protocol):
description: Sequence | None
rowcount: int
arraysize: int
def close(self) -> None:
...
def execute(self, operation: Any, *args, **kwargs):
...
def executemany(
self, operation: Any, seq_of_parameters: Sequence | Mapping, *args, **kwargs):
...
def fetchone(self) -> Sequence | None:
...
def fetchmany(self, size: int = 0) -> Sequence[Sequence]:
...
def fetchall(self, size: int = 0) -> Sequence[Sequence]:
...
def setinputsizes(self, sizes: Sequence):
...
def setoutputsize(self, size: Any, column: int | None = None):
...
from typing import TYPE_CHECKING
if TYPE_CHECKING:
from _typeshed.dbapi import DBAPIConnection, DBAPICursor