What are the available datatypes for 'dtype' with NumPy's loadtxt() an genfromtxt?

In addition to np.sctypeDict, there are these variables:

In [141]: np.typecodes
Out[141]: 
{'All': '?bhilqpBHILQPefdgFDGSUVOMm',
 'AllFloat': 'efdgFDG',
 'AllInteger': 'bBhHiIlLqQpP',
 'Character': 'c',
 'Complex': 'FDG',
 'Datetime': 'Mm',
 'Float': 'efdg',
 'Integer': 'bhilqp',
 'UnsignedInteger': 'BHILQP'}

In [143]: np.sctypes
Out[143]: 
{'complex': [numpy.complex64, numpy.complex128, numpy.complex192],
 'float': [numpy.float16, numpy.float32, numpy.float64, numpy.float96],
 'int': [numpy.int8, numpy.int16, numpy.int32, numpy.int32, numpy.int64],
 'others': [bool, object, str, unicode, numpy.void],
 'uint': [numpy.uint8, numpy.uint16, numpy.uint32, numpy.uint32, numpy.uint64]}

Generic info about dtypes: http://docs.scipy.org/doc/numpy/reference/arrays.dtypes.html

From http://docs.scipy.org/doc/numpy/reference/arrays.scalars.html#arrays-scalars-built-in

In NumPy, there are 24 new fundamental Python types to describe different types of scalars. These type descriptors are mostly based on the types available in the C language that CPython is written in, with several additional types compatible with Python’s types.

And what I didn't realise, is:

The C-like names are associated with character codes, which are shown in the table. Use of the character codes, however, is discouraged.

I doubt the numpy code/doc base is going anyway anytime soon, so that says it all I guess!


for k, v in np.sctypeDict.iteritems(): print '{0:14s} : {1:40s}'.format(str(k), v)

Q              : <type 'numpy.uint64'>      
U              : <type 'numpy.unicode_'>
a              : <type 'numpy.string_'>

etc.