[英]how to take a line from a text to use as input for a function python
大家好,我在文本中填充了一些地理数据,如下所示:
[(-76.34666,40.006886),(-76.34666,40.073017),(-76.25411,40.073017),(76.25411,40.006886)] [(-84.82031,38.403187)),(-84.82031,42.327133),(-80.51862,42.327133) ,(-80.51862,38.403187)]
现在我想逐行将其作为面函数的输入。 我第一次尝试用一行来制作它,因为我尝试迭代,但是行不通。 那是我现在的代码:
from shapely.wkt import loads as load_wkt
from shapely.geometry import Point, Polygon
f = open('koordinat.txt', 'r')
line = f.readline()
p = Polygon(line)
print (p.centroid)
我总是通过“ p = Polygon(line)”和“ LinearRing必须具有至少3个坐标元组”得到相同的错误,但是当取其中一条线并将其放在功能手册中时,它可以正常工作。
有什么帮助吗? 另外一个可能的迭代的例子将是不错的:)
您正在将字符串传递给Polygon
,但是它需要一个坐标列表(数字)。
尝试这个:
import ast
line = ast.literal_eval(f.readline())
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.