The following line: array([6.95e-5]).astype('S') returns: array(['6'], dtype='|S1') I realize that I can get it to return the correct string representation if I specify 'S12', etc, but anything below 'S9' results in an incorrect string representation of the number. Is this expected behavior? Thanks! Orest