Python中文
首页
教程
问答
标签
搜索
登录
注册
如何将度分秒转换为度分
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我从GPS接收纬度和经度,格式如下:</p> <p>纬度:北纬78°55'44.29458“</p> <p>我需要将此数据转换为:</p> <p>纬度:78.928888889</p> <p>我在这里找到了这个代码:<a href="http://en.proft.me/2015/09/20/converting-latitude-and-longitude-decimal-values-p/" rel="noreferrer">link</a></p> <pre><code>import re def dms2dd(degrees, minutes, seconds, direction): dd = float(degrees) + float(minutes)/60 + float(seconds)/(60*60); if direction == 'E' or direction == 'N': dd *= -1 return dd; def dd2dms(deg): d = int(deg) md = abs(deg - d) * 60 m = int(md) sd = (md - m) * 60 return [d, m, sd] def parse_dms(dms): parts = re.split('[^\d\w]+', dms) lat = dms2dd(parts[0], parts[1], parts[2], parts[3]) return (lat) dd = parse_dms("78°55'44.33324"N ) print(dd) </code></pre> <p>它为这种格式工作</p> <pre><code>dd = parse_dms("78°55'44.33324'N" ) </code></pre> <p>但它对我的数据不起作用。有人能帮我解决这个问题吗?</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>上面的函数(dms2dd)不正确。</p> <p>实际(有错误):</p> <p>如果方向='E'或方向='N': dd*=-1</p> <p>修正条件:</p> <p>如果方向='<strong>W</strong>'或方向='<strong>S</strong>': dd*=-1</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
python语法错误(如果不在Z中,则在X中表示s)
4 回答
Python语法错误(无效)概率
4 回答
python语法错误*带有可选参数的args
1 回答
python语法错误2.5版有什么办法解决吗?
5 回答
Python语法错误2.7.4
4 回答
python语法错误30/09/2013
4 回答
Python语法错误E001
1 回答
Python语法错误not()op
10 回答
python语法错误outpu
2 回答
Python语法错误print len()
5 回答
python语法错误w3
6 回答
Python语法错误不是caugh
5 回答
python语法错误及yt-packag的使用
1 回答
python语法错误可以查出来!!瓦里亚布
10 回答
Python语法错误可能是缩进?
10 回答
Python语法错误和缩进
2 回答
Python语法错误在while循环中生成随机numb
10 回答
Python语法错误在哪里?
5 回答
python语法错误在尝试导入包时,但仅在远程运行时
5 回答
Python语法错误在电子邮件地址提取脚本中
2 回答