La misma información, solo en forma de tabla
| r r+ w w+ a a+
------------------|--------------------------
read | + + + +
write | + + + + +
write after seek | + + +
create | + + + +
truncate | + +
position at start | + + + +
position at end | + +
donde los significados son: (solo para evitar cualquier interpretación errónea)
- leer: se permite leer del archivo
escribir: se permite escribir en el archivo
crear: el archivo se crea si aún no existe
trunctate: durante la apertura del archivo se vacía (se borra todo el contenido del archivo)
posición al inicio: después de abrir el archivo, la posición inicial se establece al inicio del archivo
- posición al final: después de abrir el archivo, la posición inicial se establece al final del archivo
Nota: a
y a+
siempre agregue al final del archivo: ignora cualquier seek
movimiento.
Por cierto. comportamiento interesante al menos en mi win7 / python2.7, para el nuevo archivo abierto en a+
modo:
write('aa'); seek(0, 0); read(1); write('b')
- el segundo write
se ignora
write('aa'); seek(0, 0); read(2); write('b')
- el segundo write
subeIOError