2010-06-25 24 views
86

Tengo una instalación win7 de 64 bits. ¿Debo usar Python 64bit? ¿Cuáles son las diferencias entre las versiones de Python de 32 bits y 64 bits de todos modos? ¿Los diferentes paquetes de Python (como south, django, mysqldb, etc.) solo admiten 32bit \ 64bit?Debo usar Python 32bit o Python 64bit

+0

relacionada https://stackoverflow.com/q/4567856/460775 – EMBarbosa

Respuesta

64

La versión de 64 bits permitirá que un solo proceso use más RAM que 32 bits, sin embargo, es posible que la huella de memoria se duplique dependiendo de lo que esté almacenando en RAM (enteros en particular).

Por ejemplo, si su aplicación requiere> 2 GB de RAM, por lo que cambia de 32 bits a 64 bits, es posible que su aplicación requiera ahora> 4 GB de RAM.

Compruebe si todos sus módulos de 3 ª parte están disponibles en 64 bits, de lo contrario, puede ser más fácil cumplir con 32bit, mientras tanto

+9

Que yo sepa, no hay binarios de 64 bits para MySQLdb - esa es la razón por la que se adhieren con el pitón de 32 bits. –

+7

¿Los módulos de terceros realmente necesitan ser compatibles explícitamente con 64 bits? – Jonathan

+5

He usado 64bit Python 2.7 durante los últimos meses (cinco años después de esta publicación) y, aunque diría que definitivamente vale la pena, tener acceso a toda esa memoria RAM es bastante agradable si no quieres perder tanto gestión de sus datos: todavía hay varias bibliotecas que son ligeramente molestas para obtener versiones de 64 bits o, en muchos casos, casi imposibles de usar (las DLL de 32 bits son un ejemplo de un recurso que aún no he podido aprovechar) sin cargar una versión de 32 bits de Python) –

5

No necesita usar 64 bits ya que Windows emulará programas de 32 bits utilizando wow64. Pero el uso de la versión nativa (64 bits) le dará más rendimiento.

3

utilizar la versión de 64 bits sólo si tiene que trabajar con grandes cantidades de datos En ese escenario, los 64 bits funcionan mejor con el inconveniente que dijo John La Rooy; si no, quédese con los 32 bits.

9

En mi experiencia, usar la versión de 32 bits es más libre de problemas. A menos que usted está trabajando en aplicaciones que hacen un uso intensivo de la memoria (la computación científica en su mayoría, que utiliza más de 2 GB de memoria), que está mejor con versiones de 32 bits porque:

  1. Por lo general, utiliza menos memoria.
  2. Tiene menos problemas para usar COM (ya que está en Windows).
  3. Si tiene que cargar archivos DLL, probablemente también sean de 32 bits. Python de 64 bits no puede cargar bibliotecas de 32 bits sin algunos hacks pesados ​​que ejecutan otro Python, esta vez en 32 bits y usando IPC.
  4. Si tiene que cargar archivos DLL que compila usted mismo, tendrá que compilarlos en 64 bits, lo que generalmente es más difícil de hacer (especialmente si usa MinGW en Windows).
  5. Si alguna vez usa PyInstaller o py2exe, esas herramientas generarán ejecutables con el mismo bitness de su intérprete de Python.