Python 将数据从设备过滤到raspberry pi
Python中数据类型的快速问题。我对python相当陌生,所以我不确定该使用哪个选项 我有来自设备(文本和int)的数据,我要存储这些数据,以一种好的方式进行操作,然后将其显示在raspberry pi显示器上。设备代码是用C编写的,但我选择python是因为它与RPi的结合非常简单 问题是什么样的数据类型在这里是一个好的选择?列表[]?字典(这样我就可以有一个有意义的键名来定义数据)?namedtuple() 感谢您的反馈 我向设备(电池组)发送我想要的数据的文本字符串 它包括温度、电荷状态、极端信息、, 电流等 我明白了!因此,您正在向设备发送请求, 假设这是一个家庭/学习项目, 您可能想要创建一个非常简单的“协议” 请求消息 例如,您可以定义如下所示的消息格式:Python 将数据从设备过滤到raspberry pi,python,list,types,Python,List,Types,Python中数据类型的快速问题。我对python相当陌生,所以我不确定该使用哪个选项 我有来自设备(文本和int)的数据,我要存储这些数据,以一种好的方式进行操作,然后将其显示在raspberry pi显示器上。设备代码是用C编写的,但我选择python是因为它与RPi的结合非常简单 问题是什么样的数据类型在这里是一个好的选择?列表[]?字典(这样我就可以有一个有意义的键名来定义数据)?namedtuple() 感谢您的反馈 我向设备(电池组)发送我想要的数据的文本字符串 它包括温度、电荷状态
{
'action': 'get',
'resource': 'temperature',
'params': {'rooms': [1,2], period_min=60} # last 60 min, for room 1 and 2
}
因此,在上面我定义了一个与(action,resource,params)
元组一起提供的格式,所有这些都是一个包含这3个键的简单字典
正如您所看到的,这个简单的dictionary对象可以描述非常广泛的用途
要将请求发送到您的设备,您必须对其进行序列化,即将其转换为字符流,以便在设备上作为Python字典进行重建。JSON和YAML很容易与该消息格式兼容,但还有更多同样可用的格式
存储
我想你说的是在显示信息的设备中存储
泡菜
如果它只是一个结果,也许只是将它酸洗到一个文件就可以了,这非常简单,因为它基本上只是保存,然后稍后从一个文件加载Python对象
sqlite
如果您要存储一个大数据集,比如记录测量值,那么可能需要一个数据库/数据存储。您可以在设备上轻松运行sqlite
,作为Python代码的DB后端
SQLite数据类型
泡菜:
sqlite3:如果您描述数据的外观,我们可以给出更好的答案(例如,是否有许多变量,如长时间测量的温度和湿度,或者只是一个计数器等)。数据的性质很有帮助,原始类型(文本,int)不是很有信息性。我将尝试描述这个过程。我向设备(电池组)发送一个文本字符串,其中包含我想要的数据,如温度、充电状态、信息极端值、电流等。我向设备发送所有这些消息以获取所有这些数据(文本、int格式),然后我想对其进行良好过滤,以便pi显示。这一切都是通过USB线完成的。希望这有帮助。谢谢你的回复。我已经在使用“导入序列”发送数据并将其返回。我只是在寻找一种存储数据的好方法。我将进一步研究你的方法!SQlite将是我以后必须实现的东西,但是SQlite采用什么数据类型呢?这就是我要说的,如果我想轻松地存储到数据库中,它会理解元组字典类型吗?或者它只会理解一个列表?还是数组?