Python 是否有一个内置项可以用来比较ctype数组和bytearray?

Python 是否有一个内置项可以用来比较ctype数组和bytearray?,python,ctypes,Python,Ctypes,让我们假设我有一个c代码 uint8_t testData[] = {0x01U, 0x21U, 0xEFU...}; uint8_t* getData() { return testData;} 现在让我们假设我用python检索了数据,并有一个指向数据array1的指针 同时在python中,我创建了一个array2=bytearray([0x01,0x21,…]) 是否有一个内置的,我可以用来比较这两个阵列 如果不是,那么不需要迭代的最干净的方法是什么?我想我找到了自己的答案:if(Tr

让我们假设我有一个c代码

uint8_t testData[] = {0x01U, 0x21U, 0xEFU...};
uint8_t* getData() { return testData;}
现在让我们假设我用python检索了数据,并有一个指向数据array1的指针

同时在python中,我创建了一个array2=bytearray([0x01,0x21,…])

是否有一个内置的,我可以用来比较这两个阵列


如果不是,那么不需要迭代的最干净的方法是什么?

我想我找到了自己的答案:if(True==all(x==y代表x,y在zip中(array1,array2)):打印“It's a match”(这包含Python迭代)。使用缓冲区协议直接比较使用
memcmp
的缓冲区,因此测试在这种情况下肯定不起作用。可能两个数组都必须是bytearray类型才能工作?@Urdar,您是以数组还是指针的形式得到结果的?它确实适用于字节大小相同的ctypes数组。哦,指针的缓冲区就是地址的4或8字节。(顺便说一句,在评论中用“@”作为尼克的前缀通知某人)