我想从USB GPS传感器获取纬度和经度数据。 我可以使用以下代码访问GPS的输出。
import time, serial
port ='COM5'
ser = serial.Serial(port)
ser.baudrate = 4800
line = ser.readline()
line2 = line.decode('latin-1')
print(line2.find("$GPGGA") != -1) #true when Lat & Long is available
print(line)
重新运行代码时会返回不同的数据。但是,当返回的信息包含前缀“$ GPGGA”时,存在纬度和经度信息(请参见屏幕截图)。
从返回的数据中提取/解析纬度和经度数据的最佳方法是什么?
我觉得这应该很简单,我遗漏了一些基本的东西。
编程新手。 谢谢 史蒂夫
答案 0 :(得分:2)
获取纬度,方向#1,长,方向#2,当字符串有效时,只需执行:
if line2.startswith("$GPGGA"):
lat,dir1,long,dir2 = line2.split(",")[2:6]
将分配4个变量作为您要查找的信息。