Mise à JOUR:
Une façon est de regarder sys.maxsize
comme indiqué ici:
$ python-32 -c 'import sys;print("%x" % sys.maxsize, sys.maxsize > 2**32)'
('7fffffff', False)
$ python-64 -c 'import sys;print("%x" % sys.maxsize, sys.maxsize > 2**32)'
('7fffffffffffffff', True)
sys.maxsize
a été introduit dans la version 2.6 de Python. Si vous avez besoin d'un test pour les systèmes plus anciens, c'est légèrement plus compliqué test devrait fonctionner sur tous Python 2 et 3 versions:
$ python-32 -c 'import struct;print( 8 * struct.calcsize("P"))'
32
$ python-64 -c 'import struct;print( 8 * struct.calcsize("P"))'
64
BTW, vous pourriez être tenté d'utiliser platform.architecture()
pour cette. Malheureusement, ses résultats ne sont pas toujours fiables, en particulier dans le cas de mac OS X universal binaries.
$ arch -x86_64 /usr/bin/python2.6 -c 'import sys,platform; print platform.architecture()[0], sys.maxsize > 2**32'
64bit True
$ arch -i386 /usr/bin/python2.6 -c 'import sys,platform; print platform.architecture()[0], sys.maxsize > 2**32'
64bit False