您几乎可以肯定要声明next_command作为指针。(任何语言)都不可能拥有包含自身的结构。
我认为这是您想要的:
class EthercatDatagram(Structure):
pass
EthercatDatagram._fields_ = [
("header", EthercatDatagramHeader),
("packet_data_length", c_int),
("packet_data", c_char_p),
("work_count", c_ushort),
("next_command", POINTER(EthercatDatagram))]