网站首页 网站地图
网站首页 > 游戏秘籍 > 经纬度换算成度分秒

经纬度换算成度分秒

时间:2026-04-01 22:15:11

经纬度转换为度分秒(DMS),是地理坐标系统中常见的操作。经纬度通常以度(°)、分(′)、秒(″)表示。

一、基本概念

  • 度(°):1° = 60′
  • 分(′):1′ = 60″
  • 秒(″):1″ = 1/60′ = 1/3600°

二、转换方法

1. 将度数转换为度分秒

例子:

40.7128°

步骤:

  1. 取整数部分:40°
  2. 余数部分:0.7128°
  3. 转换为分
    0.7128 × 60 = 42.768′
  4. 取整数部分:42′
  5. 余数部分:0.768′
  6. 转换为秒
    0.768 × 60 = 46.08″
  7. 最终结果
    40°42′46.08″

2. 通用公式

对于任意经纬度值 lat(或 lon):

度数 = 整数部分
分 = (小数部分 × 60) 的整数部分
秒 = (小数部分 × 60) 的小数部分 × 60

三、Python 实现(可选)

如果你需要将一个数值(如 40.7128)转换为 DMS,可以用 Python 实现:

def deg2dms(deg):
    degrees = int(deg)
    minutes = int((deg - degrees) * 60)
    seconds = int(( (deg - degrees) * 60 - minutes ) * 60)
    return f"{degrees}°{minutes}′{seconds}″"

# 示例
print(deg2dms(40.7128))  # 输出: 40°42′46″

四、注意事项

  • 精度问题:如果小数部分非常小(如 0.0001°),可以保留到小数点后 6 位(如 0.000123°)。
  • 负值:如果经纬度是负数(如 -40.7128°),则符号在前面。

五、总结

原始值 转换后 说明
40.7128° 40°42′46″ 40°42′46.08″(保留 6 位小数)
-40.7128° -40°42′46″ 负值符号在前
0.000123° 0°0′0.738″ 保留 6 位小数

如需将经纬度转换为 度分秒(DMS) 的字符串格式(如 40°42′46″),可以使用上述方法或编程实现。

如果你有具体的经纬度数值,我可以帮你转换!