write with read open modes python file syntax

with - wb+ python



¿Qué significa ''wb'' en este código, usando Python? (4)

Código:

file(''pinax/media/a.jpg'', ''wb'')


El wb indica que el archivo está abierto para escribir en modo binario.

En los sistemas Unix (Linux, Mac OS X, etc.), el modo binario no hace nada: trata los archivos de texto de la misma manera que cualquier otro archivo. En Windows, sin embargo, los archivos de texto se escriben con terminaciones de línea ligeramente modificadas. Esto causa un problema grave cuando se trata de archivos binarios reales, como archivos exe o jpg . Por lo tanto, al abrir archivos que no se supone que sean texto, incluso en Unix, debe usar wb o rb . Use w normal o solo para archivos de texto.

Referencia: http://docs.python.org/tutorial/inputoutput.html#reading-and-writing-files


Ese es el modo con el que está abriendo el archivo. "wb" significa que está escribiendo en el archivo (w) y que está escribiendo en modo binario (b).

Consulte la documentación para obtener más información: clicky


También debe considerar usar open lugar de file . file estaba en desuso en Python 2 (no se pudo encontrar qué versión) y se ha eliminado en py3k. (gracias Scott)

Vea esta pregunta para más información.


Modo de archivo , escritura y binario. Como está escribiendo un archivo .jpg, se ve bien.

Pero si se supone que debes leer ese archivo jpg, necesitas usar ''rb''

Más información

En Windows, ''b'' agregado al modo abre el archivo en modo binario, por lo que también hay modos como ''rb'', ''wb'' y ''r + b''. Python en Windows hace una distinción entre archivos de texto y binarios; los caracteres de fin de línea en los archivos de texto se modifican automáticamente cuando se leen o escriben los datos. Esta modificación entre bastidores de los datos de archivos está bien para los archivos de texto ASCII, pero dañará los datos binarios de esa manera en los archivos JPEG o EXE.