Garanterad upprensning En variant av try hjälper oss garantera att kod körs på slutet: def f(): rsrc = alloc_external_expensive_resource() try: res = call_dangerous_code() finally: dealloc_resource(rsrc) Om call_dangerous_code() orsakar fel så kommer avallokeringen att utföras och felet propageras till koden som anropade oss Om call_dangerous_code() lyckas så kommer avallokeringen att utföras likväl