python利用cantools库解析dbc文件

 db = cantools.database.load_file(filepath)
 for message in db.messages:
 	message._frame_id
 	signals = message.signals
 	for signal in signals:
 		if signal.name.__contains__("XXX"):
 		

上述代码大致演示了如何从dbc文件中拿出各个message以及对应的signal
cantools.database.load_file(filepath)加载dbc文件返回db对象
db.messages返回message列表
message._frame_id拿到canid,具体要拿到其他属性可以通过打印db对象获取具体属性名
message.signals获取signal列表
signal.name.contains(“XXX”):可以来筛选包含指定字段的signal,同时signal的其他属性也可以通过打印的方式获取

你可能感兴趣的:(c语言应用,python)