On Wed, Dec 3, 2014 at 8:44 AM, Matthew Brett <matthew.brett@gmail.com> wrote:
Hi,
I just noticed this using Christophe Gohlke's MKL builds of numpy:
import numpy as np val = 2**63 + 2**62 np.float64(val) 1.3835058055282164e+19 np.float64(val).astype(np.uint64) 9223372036854775808
I have tried this out on Python 3 and 2, both 32 and 64 bits, and cannot reproduce it: Python 3.3.5 (v3.3.5:62cf4e77f785, Mar 9 2014, 10:35:05) [MSC v.1600 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information.
import numpy as np np.float64(2**63 + 2**62).astype(np.uint64) 13835058055282163712
Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:03:43) [MSC v.1600 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information.
import numpy as np np.float64(2**63 + 2**62).astype(np.uint64) 13835058055282163712
Python 2.7.6 (default, Nov 10 2013, 19:24:24) [MSC v.1500 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information.
import numpy as np np.float64(2**63 + 2**62).astype(np.uint64) 13835058055282163712
Python 2.7.5 (default, May 15 2013, 22:43:36) [MSC v.1500 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information.
import numpy as np np.float64(2**63 + 2**62).astype(np.uint64) 13835058055282163712
These are all WinPython (http://winpython.sourceforge.net/) builds, which I believe use a similar toolchain to Christophe's, including MKL. Jaime -- (\__/) ( O.o) ( > <) Este es Conejo. Copia a Conejo en tu firma y ayúdale en sus planes de dominación mundial.