Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在块中读取\u csv时捕获异常_Python_Pandas - Fatal编程技术网

Python 在块中读取\u csv时捕获异常

Python 在块中读取\u csv时捕获异常,python,pandas,Python,Pandas,我在捕获异常(本例中为UnicodeDecodeError)时读取了一个csv文件,如下所示: def read_csv(filename, chunksize=None, iterator=False): """Read a csv using pandas, while breaking the file into chunks if necessary""" try: return pd.read_csv(filename, chunksize=chunks

我在捕获异常(本例中为UnicodeDecodeError)时读取了一个csv文件,如下所示:

def read_csv(filename, chunksize=None, iterator=False):
    """Read a csv using pandas, while breaking the file into chunks if necessary"""
    try:
        return pd.read_csv(filename, chunksize=chunksize, iterator=iterator)
    except UnicodeDecodeError:
        return pd.read_csv(filename, encoding="ISO-8859-1", chunksize=chunksize, iterator=iterator)
当我不分块读取csv时,这很好

但是,当我将chunksize设置为一个数值时,在开始迭代的步骤中似乎失败了:

df = read_csv(filename, chunksize=CHUNKSIZE, iterator=True)

chunk_iter = 0
for chunk in df:   # exception triggered here
    chunk_iter = chunk_iter + 1

如何在for循环中捕获异常?

您将获得什么异常?你能显示输出吗?另外,这个代码片段来自
pd.read\u csv()
?异常处理是在函数read\u csv中定义的,它确实在使用pd.read\u csv(..)权限的内部。当您尝试运行此程序时,是否可以发布异常和输出?UnicodeDecodeError引发的是声明的内容。我这边的一个例子:
UnicodeDecodeError:“utf-8”编解码器无法解码第9位的字节0xd8:无效的连续字节