Object.type - Empty / Effector Is there a way to distinguish empties from effectors ?

If I have one empty and one force field, this :

for obj in bpy.context.scene.objects:
    print(obj.type)


will return :


  Empty
  Empty
An empty

is_empty = obj.type == 'EMPTY'
#or 
is_empty = obj.data is None


All objects have a field attribute, that is 'NONE' if there is no force field assigned to it.

is_effector = obj.field.type != 'NONE'