Python 2.5.2-什么是代替'with'语句


问题内容

我为python 2.7编写了代码,但是服务器有2.5。我该如何重写下一个代码,使其在python 2.5.2中运行:

gzipHandler = gzip.open(gzipFile)

try:
    with open(txtFile, 'w') as out:
        for line in gzipHandler:
            out.write(line)
except: 
    pass

现在,当我尝试运行脚本时,出现此错误:

警告:“ with”将成为Python 2.6追溯中的保留关键字(最近一次调用为最新):文件7中的“
Main.py”,从Extractor导入Extractor文件“
/data/client/scripts/Extractor.py”中,第29行,其中open(self._logFile,’w’)为out:^
SyntaxError:语法无效

谢谢,罗恩。


问题答案:

在Python 2.5中,您实际上 可以 使用该with语句-只需从中导入即可__future__

from __future__ import with_statement