Tag Archives: with

[翻译]关于python的“with”声明

从com.lang.python以及其他的一些论坛上看来,一些有经验的python开发者对于在2.5版本新增加的with似乎有一点迷惑。 如同Python的其他方面一样,一旦你了解了with是用来试图解决哪些问题的时候,你会发现其实它很简单。 看看下面的代码片段: set things up try:     do something finally:     tear things down 在这里,”set things up” 可以是打开一个文件或者获得一些外部资源,而”tear things down”可能是相对应的关闭打开的文件或者释放或移除一些资源。try-finally结构保证了就算”do something”代码没有真正执行完成,”tear thigs down”部分也总是会被执行。 如果你经常如上面那样编写一些代码,那么将“set things up”和”tear things down“这些代码放到库函数里以便重用是比较方便的。你可以如下面那样作: def controlled_execution(callback):     set things up     … Continue reading

Posted in python | Tagged , | Leave a comment