当我在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版本的升级。
任何建议都会很棒!
答案 0 :(得分:9)
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中不存在上下文管理器。
您还必须明确关闭该文件。