递归函数不会返回预期的对象

山姆·康伯

我已经编写了一个基本函数来shapely从该ox.gdf_from_place函数中递归查找多边形本质上,这个想法是调用ox.gdf_from_place直到返回多边形为止。问题是即使执行正常,我的函数也不会返回任何内容。

有人对如何使它起作用有任何建议吗?

import shapely
import osmnx as ox

result_num = 0

def recursive_find_poly(poi, result_num):

    country = ox.gdf_from_place(poi, which_result=result_num)

    if type(country.unary_union) != shapely.geometry.polygon.Polygon:

        result_num += 1

        recursive_find_poly(poi, result_num)
    else:

        return country

test = recursive_find_poly('Istanbul', result_num)
Pietzcker团队

您忘记了return以下if子句中声明

if type(country.unary_union) != shapely.geometry.polygon.Polygon:
    result_num += 1
    return recursive_find_poly(poi, result_num)
else:
    return country

否则,匹配调用返回的值将丢失。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章