我有一个纬度/经度的文本文件,我想将其转换为英国地图网格的基本坐标。
在文本文件中,每一行都是这样的:
51.505046,-0.12687
51.505046,-0.12687
51.508369,-0.120969
51.508369,-0.120969
51.508369,-0.120969
51.508646,-0.195893
51.508646,-0.195893
51.507841,-0.127332
51.507841,-0.127332
,我想将这些值更改为:
530100,180120
530100,180120
530500,180500
530500,180500
530500,180500
525300,180400
525300,180400
530060,180430
530060,180430
我写了下面的代码,但出现错误,无法转换坐标。你有什么主意吗?
从OSGridConverter导入latlong2grid
filepath ='C:/Users/Desktop/coo1.txt'
file = open(文件路径)
对于文件中的行:
... fields = line.split(“,”)
... field1 =字段[0]
... field2 =字段[1]
... g = latlong2grid(field1,field2)
... print(g,E,g.N)
错误:OSGridConverter.base.OSGridError:OSGridConverter错误:无法解析参数51.505046
我可以通过以下方式分别转换每行:
g = latlong2grid(52.657977,1.716038)
(g.E,g.N)
但不是整个文本。
答案 0 :(得分:0)
我认为问题在于您正在向函数传递字符串,将其转换为float:
g=latlong2grid (float(field1), float(field2))