Python:从文件读取时出现语法错误

时间:2012-01-12 00:15:39

标签: python file-io syntax

我正在从文件中读取数据。数据文件中的大多数数据将被读入并写入输出文件而不进行修改。但是,在某些地方,数据由空白行分隔,该空白行位于其他5个无用行之前。这是我的代码:

#Now loop over the entire file
while True:
testline = infile.readline()
if len(testline) ==0:
    break # EOF
elseif testline == '\n':
    for i in range(0,5)
        testline = infile.readline()
else:
    outfile.write(testline)

我收到以下错误,让我难过:

File "convert.py", line 31
elseif testline == '\n':
              ^
SyntaxError: invalid syntax

有什么想法?我无法弄清楚我的elseif声明有什么问题。

4 个答案:

答案 0 :(得分:9)

python中不是elseif,而是elif

答案 1 :(得分:5)

其他人指出它是elif。此外,您在for语句末尾缺少冒号,Python可能会抱怨跟随行。所以现在你不必再回来问一个单独的问题了。 : - )

如果您只想迭代文件中的行,更好的方法是:

for testline in testfile:
   # do stuff with the line

您不必以这种方式检查文件结尾,因为当您到达文件末尾时,循环会自动结束。

答案 2 :(得分:2)

你正在寻找的不是'elseif'是'elif'。

此外,在你的for循环结束时还有另一个错字for i in range(0,5)它需要:在那里结束。

答案 3 :(得分:1)

您可以随时尝试将elseif更改为elif

你的缩进从第二行开始填充