Python 将经纬度度分秒格式转换成十进制格式

搬瓦工

今天需要将一个 Excel 文件里的度分秒格式的经纬度转换成十进制格式,因为需要进行一些处理,格式没统一就很烦。所以要先判断它是不是度分秒格式,如果是,就把它转换成十进制格式,代码实现还是比较简单,最近也不知道更新什么内容,就在此分享一下,Python经纬度度分秒转换成十进制的方法。

一、解决方法

几行代码就行了:

import re
longitude_split = re.split(u"°|\'|\"", longitude[i])[:3]
if len(longitude_split) == 3:
    x = [float(j) for j in longitude_split]
    longitude[i] = x[0] + x[1] / 60 + x[2] / 3600

需要注意一下你们的度分秒的标点符号,自己 print 一下看看然后替换成对应的使用的标点符号,因为可能是中文符号或者别的符号也说不定,符号不对应上是正则匹配不出来的。

判断长度为 3 则是度分秒,否则就是长度为 1 的十进制格式,无需转换。

二、其他 Python 教程

不知道写点什么其他的,摘录一下之前记录的其他 Python 相关文章。

赞(0)
未经允许不得转载:老唐笔记 » Python 将经纬度度分秒格式转换成十进制格式