Python:读取文件时语法错误

0 投票
4 回答
982 浏览
提问于 2025-04-17 10:03

我正在从一个文件中读取数据。大部分数据会直接读取进来,然后写入到一个输出文件里,不会做任何修改。不过,有些地方数据是用空行分开的,空行后面还有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 个回答

2

你要找的不是'elseif',而是'elif'。

另外,在你的for循环的结尾还有一个小错误,for i in range(0,5) 这里面最后需要加一个冒号(:)。

5

其他人已经指出你应该用 elif。另外,你的 for 语句后面缺少一个冒号,Python 可能会对下面的那一行报错。所以你现在不需要再单独问这个问题了。:-)

不过,如果你只是想逐行读取文件,实际上有更好的方法:

for testline in testfile:
   # do stuff with the line

这样你就不需要手动检查文件是否读完,因为循环会在到达文件末尾时自动结束。

9

在Python里,没有elseif这个写法,正确的是elif

撰写回答