在python 2.4.3中打开的替代方法是什么

时间:2014-02-24 17:46:23

标签: python linux

当我在python 2.4.3中使用open()时,我收到以下错误

  

File "/tmp/chgjdbcconfig.py", line 16 with open("text.new", "wt") as fout: ^ SyntaxError: invalid syntax

我检查了python版本,这是我的输出

  

Python 2.4.3

我正在寻找有关可能替代方案的建议。我正在尝试在Linux服务器上编辑XML文件中的行,而我无法控制python版本的升级。

任何建议都会很棒!

2 个答案:

答案 0 :(得分:9)

2.4中没有遗漏

open。遗漏的是with声明(added in Python 2.5 as PEP-0343)

在没有with的情况下执行相同的代码:

fout = open("text.new", "wt")
# code working with fout file
fout.close()

注意使用fout.close()时隐含with,但您需要自己添加<{1}}


with语句具有关闭文件的额外好处,即使引发了异常,因此实际上会有更精确的模拟:

fout = open("text.new", "wt")
try:
    # code working with fout file
finally:
    fout.close()

答案 1 :(得分:0)

它不是open()它正在窒息。它是with语法。 Python 2.4中不存在上下文管理器。

您还必须明确关闭该文件。