1

我在 VS2013 中使用带有 Python 3.4.1 的 PTVS。

以下代码尝试读取文件末尾并在 VS2013 中引发 StopIteration 异常。它在 Python 解释器中运行良好。

source.csv 是从 Excel 2013 保存为 csv 的简单 csv 文件。

csvreader.py:

import csv

with open(r"c:\data\source.csv", "r") as reader:
    csvreader = csv.DictReader(f=reader, dialect = 'excel')
    for row in csvreader:
        print(row)

来源.csv:

Col1,Col2,Col3
a1,a2,a3
b1,b2,b3
4

1 回答 1

3

StopIteration无论如何都在那里提出,只是VS实际上向您展示了它提出的点。这并不意味着异常未处理 - 如果您从该点继续运行,您会发现它的工作方式完全相同。

现在,默认情况下它不应该报告这个异常(在 Debug -> Exceptions 中它的默认设置是报告未处理,所以它应该只在它实际上未处理时才报告)。如果您使用的是 PTVS 2.0,那么您很可能遇到了这个错误。我建议切换到2.1 beta,它可以解决许多其他问题。

于 2014-06-12T07:21:58.547 回答