Type discrepancy using struct.unpack

Leo Kislov Leo.Kislov at gmail.com
Thu Oct 19 13:21:55 CEST 2006


Pieter Rautenbach wrote:
> Hallo,
>
> I have a 64 bit server with CentOS 4.3 installed, running Python.
>
> [pymsnt at lutetium pymsnt-0.11.2]$ uname -a
> Linux lutetium.mxit.co.za 2.6.9-34.ELsmp #1 SMP Thu Mar 9 06:23:23 GMT
> 2006 x86_64 x86_64 x86_64 GNU/Linux
>
> Consider the following two snippets, issuing a struct.unpack(...) using
> Python 2.3.4 and Python 2.5 respectively.
>
> [pymsnt at lutetium pymsnt-0.11.2]$ python
> Python 2.5 (r25:51908, Oct 17 2006, 10:34:59)
> [GCC 3.4.5 20051201 (Red Hat 3.4.5-2)] on linux2
> Type "help", "copyright", "credits" or "license" for more information.
> >>> import struct
> >>> print type(struct.unpack(">L", "xxxx")[0])
> <type 'int'>
> >>>
>
> [pymsnt at lutetium pymsnt-0.11.2]$ /usr/bin/python2.3
> Python 2.3.4 (#1, Feb 17 2005, 21:01:10)
> [GCC 3.4.3 20041212 (Red Hat 3.4.3-9.EL4)] on linux2
> Type "help", "copyright", "credits" or "license" for more information.
> >>> import struct
> >>> print type(struct.unpack(">L", "xxxx")[0])
> <type 'long'>
> >>>
>
> I would expect <type 'long'> in both cases. Why is this not so?

http://mail.python.org/pipermail/python-dev/2006-May/065199.html

  -- Leo.




More information about the Python-list mailing list