我正在尝试迭代CSV文件,并且我有一个try..except
块来捕获格式错误的数据。我正在测试的文件中的第一行有一个错误的条目,它应该跳过,但随后它也会跳过每个后续行。如果我删除带有错误条目的第一行,则其余数据按预期加载。
csvfile = TextIOWrapper(request.FILES['doc'].file, encoding=request.encoding)
reader = csv.reader(csvfile)
next(reader) ## Skip the header line
for r in reader:
data = {'field1' : r[1], 'field2' : r[2]}
try:
my_object = MyObject.objects.create(**data)
except:
## There was en error with the data
continue
如果只有第一行实际包含格式错误的数据,我为什么每一行都会被跳过而感到有点遗憾。如果第一行被删除,则其他行有效。