下面是一段假设的代码
with dbengine.connect(**details) as db:
cur = db.exec(sql_string)
results = cur.fetchall()
return results
在这种情况下,我希望当使用块 db.close()退出时,会调用 db 并将 db 标记为垃圾收集。
在工作中,我开始看到这段代码突然出现。
with something() as myobj:
logger.info('I got an obj!')
return myobj
我不知道你是否应该像java中的new关键字一样使用with 。有人可以指导我找到任何可以解释使用 with 时可以/不应该/不应该做什么的好文档吗?
PS 日志消息实际上是那么蹩脚:-)