下面是一個假設的一段代碼如何使用Python中的上下文管理器來
with dbengine.connect(**details) as db:
cur = db.exec(sql_string)
results = cur.fetchall()
return results
在這種情況下,我會期望標籤出與塊db.close()時被調用和db被標記爲垃圾收集。
在工作中,我已經開始看到這段代碼出現了。
with something() as myobj:
logger.info('I got an obj!')
return myobj
我不知道你是否應該使用與象Java中新關鍵字。有人能指導我找到任何可以解釋在使用時可以/不應該做什麼的好文檔嗎?
P.S日誌消息實際上是跛腳:-)
第二段代碼完全沒有意義。擊中寫它的人。打他很難。 – 2013-05-27 14:02:26