2013-06-06 16 views
20

Jaka jest różnica między wbudowanymi float i numpy.float32?Różnica między floatem w języku Python i numpy float32

Przykład

a = 58682.7578125 
print type(a) 
print a 
print type(numpy.float32(a)) 
print numpy.float32(a) 

wyjściowa:

<type 'float'> 
58682.7578125 
<type 'numpy.float32'> 
58682.8 

Znalazłem here że numpy.float32 jest:

float32 pojedynczej precyzji pływaka: bit znaku, 8 bitów wykładnik, 23 bity mantyla

Nie znaleziono formatu w formacie float.

+0

W twoim przykładzie 'float_32 = np.float32 (a); print (float_32 == a)' wypisuje True - ?? –

Odpowiedz

17

Pythona średnia float typ jest C double: http://docs.python.org/2/library/stdtypes.html#typesnumeric

NumPy przez standardowe numpy.float jest taka sama i jest taka sama, jak numpy.float64.

+16

Zauważ, że 'numpy.float' jest po prostu aliasem typu' float' w języku Python. Nie jest to typ liczbowo skalarny, taki jak 'numpy.float64'. Nazwa jest wystawiona tylko na kompatybilność wsteczną z bardzo wczesną wersją numpy, która nieprawidłowo wyeksponowała 'numpy.float64' jako' numpy.float', powodując problemy, gdy ludzie robili 'from numpy import *'. –

Powiązane problemy