The numpy documentation describes the option to create custom composite types.
How should one use them?
I can imagine a practical example being a composite time format that would could be used to unify python, hdf5 and numpy as for example:
custom_time = np.dtype( [ ('h', np.int8) , ('m', np.int8), ('s', np.float)] )
t = custom_time(23,59,59.99999)
(the line above doesn't work - I get TypeError: 'numpy.dtype[void]' object is not callable)