在我的代码中有一个函数包含一个csv阅读器,如下面的
def preprocessing_file(file_path):
out = []
with open(file_path,'r') as f_in:
lines = csv.reader(f_in)
next(lines)
out.append(lines)
return out
当我运行此代码时,终端会向我显示
下面的消息 File "preprocessing.py", line 14, in preprocessing_file
next(lines)
StopIteration
在我将这些部分设为函数之后,在代码正常工作之前会出现此问题。
任何人都知道这个问题是什么?
答案 0 :(得分:2)
你打开了一个空文件;没有要迭代的行。您可以告诉squeue -O "stepid:6,username:8,account:7,name:53,partition:15,submittime:20" | sort -k4
通过为其返回默认值来禁止异常:
next()
请参阅Skip the headers when editing a csv file using Python。
请注意,您的next(lines, None)
行会将 CSV阅读器对象附加到列表中,而不是CSV中的行。我改为使用out.append(lines)
,或者仅使用out = list(lines)
返回阅读器本身。