首页 > 解决方案 > 如何通过处理错误来完成流程?

问题描述

- 这是一个 Python 的一般问题。

我经常遇到拓扑错误,它们非常小,即使它们在那里,我也想继续前进。是否可以为此特定例外:

TopologyException: found non-noded intersection between LINESTRING (229971 4.39944e+06, 229971 4.39944e+06) and LINESTRING (229971 4.39944e+06, 229971 4.39944e+06) at 229971.08857010119 4399438.0928708706并让它完成整个过程?我正在使用 Python 和 Geopandas。

有时在十字路口它说:

 TopologicalError: This operation could not be performed. Reason: unknown

像这样的任何行是否有可能:inte_s=gpd.overlay(data2,asttom,how='intersection') 这会导致此错误创建一个异常并使其执行计算,因为它不会受到将出现的错误的影响?在完成交叉点的这一行中,什么代码会这样做?

标签: pythonexception

解决方案


TopologicalError 需要先导入,然后使用 try...except 语句。

from shapely.geos import TopologicalError

try:
    # your code that may raise the exception
except TopologicalError:
    # alternative code if the exception is raised



推荐阅读