python - 我不明白为什么会发生校验和错误
问题描述
我在 Internet pynmea2 库上发现,它使用了 parse(data, check=False) 函数,该函数接受一个包含 NMEA 0183 句子的字符串并返回一个 NMEASentence 对象。
我尝试编写一些简单(非常简单)的代码来理解功能:
import pynmea2
def main():
f = open("file.nmea", "r")
for line in f.readlines():
msg = pynmea2.parse(line)
print(str(msg))
因此,我从文件中读取句子并将它们传递给 parse 函数,但出现错误:
Traceback (most recent call last):
File "/home/maestrutti15/PycharmProjects/prova/main.py", line 13, in <module>
main()
File "/home/maestrutti15/PycharmProjects/prova/main.py", line 9, in main
msg = pynmea2.parse(str(line))
File "/home/maestrutti15/PycharmProjects/prova/venv/lib/python3.8/site-packages/pynmea2/nmea.py", line 115, in parse
raise ChecksumError(
pynmea2.nmea.ChecksumError: ('checksum does not match: 17 != 3B', ['121626.10', 'A', '4608.25657', 'N', '01313.38859', 'E', '0.071', '270421', 'A', 'V'])
谁能告诉我为什么会出现这个错误?我不明白...如果我写
msg = pynmea2.parse("$GNRMC,121626.15, ..)
通过这种方式,它打印结果。
谢谢!
解决方案
推荐阅读
- java - 获取 build.gradle 文件作为 .class 文件
- c++11 - stable_clock::now 是否返回秒数?
- java - 将双精度数组从 Python 移动到 Java
- java - 在mysql(JAVA休眠)中调用存储过程时出错
- oracle - ORA-12154 错误 TNS 无法解析指定的连接标识
- ruby-on-rails - 即使你在 Sakura Cloud 中启动 Rails 也是“无法访问此站点”
- c++ - 将临时派生对象传递给基引用
- javascript - 如何将音频 blob 拆分为更小的音频 blob 并使每个 blob 可播放
- matlab - Visual Studio 构建解决方案
- python-3.x - Matplotlib:条形图,每个条形上都有颜色渐变。错误:TypeError:“ListedColormap”类型的对象没有 len()