我目前正在使用save()
方法构建类模型,以将其插入/更新到这样的数据库中:
class Session(object):
#
# ...
#
def save(self):
try:
database = Database()
if self.id == None:
self.id = database.insert(
'<table>',
[<list of columns>],
[<list of values>]
)
if self.id == False:
raise RuntimeError('Database insert failed for Session class.')
else:
if not database.update(
'<table>',
[<list of columns>],
[<list of values>],
[<list of columns>],
[<list of values>]
):
raise RuntimeError('Database update failed for Session class.')
except (RuntimeError):
print(RuntimeError)
database.disconnect()
return True
我正在Database()
类的save方法内创建数据库对象Session
。但是,我想知道__del__
类方法完成后是否自动调用对象Session
。如果是这样,我宁愿让database.disconnect()
在数据库对象__del__
方法内部运行,而不是在当前的Session
类方法中运行。
我不太确定Python如何处理函数中的对象,如果我对许多对象进行处理而没有正确删除旧对象,会出现内存问题吗?
我的问题与以下可能重复的建议有所不同,因为我要要求对在另一个对象中完成的对象调用什么方法的组合,同时还要询问它们是否在作用域末尾被垃圾回收。