python 正则处理经纬度度分秒转换

1.经纬度的整数部分是度分秒中的度。
2.经纬度的小数部分×60得到的整数部分就是度分秒中的分。
3.再用最后经纬度的小数部分×60,得到的就是度分秒中的秒。

keyword = re.sub('(\-?\d{1,4})°(\d{1,4})′(\d{1,4})\.?(\d{1,4}?)″',
                     lambda x: str(float(x.group(1)) + float(x.group(2)) / 60 + (float(x.group(3)) + float(x.group(4))/10*len(x.group(4)) if len(x.group())>3 else 0) / 3660 ), keyword)

结果

东经41°8′32.73″,北纬51°9′86.73″
转换成
东经41.14606557377049,北纬51.17748633879781
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容