El close()
aquí ocurre cuando el objeto file
se desasigna de la memoria, como parte de su lógica de eliminación. Debido a que los Pythons modernos en otras máquinas virtuales, como Java y .NET, no pueden controlar cuándo un objeto es desasignado de la memoria, ya no se considera bueno como Python a open()
sin un close()
. La recomendación actual es el uso de una declaración with
, que solicita explícitamente una close()
cuando se sale del bloque:
with open('myfile') as f:
# use the file
# when you get back out to this level of code, the file is closed
Si usted no necesita un nombre f
para el archivo, a continuación, se puede omitir la cláusula as
de la declaración :
with open('myfile'):
# use the file
# when you get back out to this level of code, the file is closed
OK muy buena respuesta para mí. – philnext
¿es posible hacerlo en línea o sin una 'f' temporal? –
Sí, he complementado la pregunta para mostrar cómo no crear un nombre 'f' para el archivo. –