包声明语言

时间:2014-01-26 12:14:38

标签: python python-2.7 packet

我正在编写一个程序,它将与另一个程序进行通信,显然应该使用相同的协议。

我需要的是protobuf,但不是protobuf,因为它不会让我完全按照我想要的方式描述数据包格式。例如,它在其数据包中插入字段编号。由于同样的原因,Pickle也不会这样做。

我使用struct编写自己的东西,但它很难看,我不完全理解它是如何工作的。我需要一些东西,我可以描述不同的字段,如短,整数,它们的字节序,复杂字段,它包括原始字段或其他复杂字段,原始字段数组,复杂字段数组。

你能推荐这样的东西吗?或者我注定要坚持自己的解决方案?

1 个答案:

答案 0 :(得分:1)

我之前必须编写用于处理二进制格式的Python代码,struct使用起来并不好玩。 construct模块更好。它允许您使用简单的声明性语法来使用和生成复杂的二进制格式。