StopIteration不可预测的错误



此函数会给我不可预测的StopIteration错误。我想了解是什么导致了这样的错误。因为它有时起作用,有时不起作用:

def prepare_dimensions(dimensions, dim_list):
        for dimension in dimensions:
            dimension['info'] = next(dim for dim in dim_list if dimension['id'] == dim['_id'])

StopIteration将由next引发,如果它被赋予一个空的可迭代项。

如果你的任何dimensionsdim_list中的任何内容都不匹配,你就会得到这个错误,因为列表理解将是空的。类似地,如果dim_list为空,则会出现此错误。

最新更新