Python检测EOF

时间:2014-08-26 15:59:35

标签: python eof

我正在尝试编写if语句,同时读取csv文件:

if row = [] or EOF:
    do stuff

我在线搜索过,无法找到任何方法。帮助

2 个答案:

答案 0 :(得分:1)

with open(fname, 'rb') as f:
    for line in f:
        # line = line.strip(' \r\n') # to remove spaces and new line chars if needed
        if not line:
            do stuff
    do stuff

以上就足够了。

要检查您是否在文件的末尾,您也可以这样做:

import os
with open(fname, 'rb') as f:
   is_end = f.tell() == os.fstat(f.fileno()).st_size

但我认为你不需要。

答案 1 :(得分:1)

不确定我是否完全理解你,但忽略空行我会使用if line.strip()

with open("in.txt") as f:
    for line in f:
        if line.strip():
            # append
        else:
            # do what you need
    # do last requirement