python:在没有类的情况下封装数据?

2024-04-18 10:53:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个python模块,它提供了执行数据库查询的各种函数。 看起来是这样的:

def do_some_query(conn):
    ## logic goes here

def do_something_else(conn):
    ## logic goes here

其中conn是数据库连接对象。当然,这意味着需要大量传递conn对象。 我想允许用户只为他们的会话设置一次连接对象,然后调用函数。你知道吗

很明显,把所有的东西放在一个类中是一个很好的答案,但是我不想让用户每次想要使用函数时都初始化一个类。 也就是说,我不希望API是这样的:

 from database_module import DatabaseClass

 db = DatabaseClass()
 db.connect(...)
 db.do_some_query()

但就像这样:

 import database_module as dm

 dm.connect(...)
 dm.do_some_query()

有没有一种方法可以对用户“隐藏”类,或者在没有类的情况下提供封装?你知道吗


Tags: 对象函数用户数据库dbheredefsome