Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python numpy-如何方便地比较自定义数据类型?_Python_Numpy - Fatal编程技术网

Python numpy-如何方便地比较自定义数据类型?

Python numpy-如何方便地比较自定义数据类型?,python,numpy,Python,Numpy,我有一个包含30多个字段的数据类型。我想比较两个具有该数据类型的对象,以便准确地知道哪些字段不相等。一个简单的解决方案是在一系列if语句中硬编码每个字段比较: if (obj1['field1']==obj2['field1']) DO_SOMETHING if (obj1['field2']==obj2['field2']) DO_SOMETHING # ... 有没有更好的方法来比较两个具有自定义数据类型的对象,并准确知道哪些字段匹配或不匹配?您可以通过以下方式访问对象的数据类型字段。

我有一个包含30多个字段的数据类型。我想比较两个具有该数据类型的对象,以便准确地知道哪些字段不相等。一个简单的解决方案是在一系列if语句中硬编码每个字段比较:

if (obj1['field1']==obj2['field1']) DO_SOMETHING
if (obj1['field2']==obj2['field2']) DO_SOMETHING
# ...  

有没有更好的方法来比较两个具有自定义数据类型的对象,并准确知道哪些字段匹配或不匹配?

您可以通过以下方式访问对象的数据类型字段。因此:

# obj1 and obj2 are elements in a numpy array with a custom dtype
for field in obj1.dtype.names:
    if obj1[field]==obj2[field]:
        # DO_SOMETHING