Articles of with statement

Archivo abrir y cerrar en python

He leído que cuando el archivo se abre con el siguiente formato with open(filename) as f: #My Code f.close() No se requiere el cierre explícito del archivo. ¿Alguien puede explicar por qué es así? Además, si alguien cierra explícitamente el archivo, ¿tendrá algún efecto no deseado?

El objective de la statement `with` de Python es inesperadamente Ninguno

Parece que no entiendo algo con — el python with statement. Considera esta clase: class test(object): def __enter__(self): pass def __exit__(self, *ignored): pass ahora, cuando se usa with , como en with test() as michael: print repr(michael) Espero algún resultado como . Pero no tengo ninguno . Algo malo aquí? Cualquier sugerencia ayudaría. (Estoy usando […]

Implementando el uso de ‘with object () como f’ en la clase personalizada en python

Tengo que abrir un objeto similar a un archivo en python (es una conexión en serie a través de / dev /) y luego cerrarlo. Esto se hace varias veces en varios métodos de mi clase. Cómo lo estaba haciendo fue abrir el archivo en el constructor y luego cerrarlo en el destructor. Sin embargo, […]

procesamiento de archivos línea por línea, for-loop vs with

Estoy tratando de entender las compensaciones / diferencias entre estos y las formas de abrir archivos para el procesamiento línea por línea. with open(‘data.txt’) as inf: for line in inf: #etc vs for line in open(‘data.txt’): # etc Entiendo que usar with asegura que el archivo se cierre cuando se sale de “with-block” (suite?) (O […]

¿Es Python * con * instrucción exactamente equivalente a un bash – (excepto) – finalmente bloquear?

Sé que esto fue ampliamente discutido, pero todavía no puedo encontrar una respuesta para confirmar esto: es la sentencia with idéntica a llamar al mismo código en un bloque try – (excepto) -finally, donde cualquiera que se defina en la función __exit__ de El gestor de contexto se coloca en el bloque finalmente? Por ejemplo, […]

¿Cómo verificar si un objeto se crea con la statement `with`?

Me gustaría asegurarme de que la clase solo sea instanciada dentro de una statement “con”. es decir, este está bien: with X() as x: … y esto no es x = X() ¿Cómo puedo asegurar tal funcionalidad?

¿Es una buena práctica depender de python con … como statement?

Tengo curiosidad por saber si se considera seguro o una buena práctica depender de python’s con … como afirmación. Por ejemplo al abrir un archivo: with open(“myfile”,”w”) as myFile: #do something Así que en este ejemplo, me myFile.close() llamar explícitamente a myFile.close() sin embargo, puedo asumir que fue llamado cuando Python salió de la instrucción […]

En Python, si vuelvo dentro de un bloque “con”, ¿se cerrará el archivo?

Considera lo siguiente: with open(path, mode) as f: return [line for line in f if condition] ¿Se cerrará el archivo correctamente o el uso de return alguna manera no pasa por el administrador de contexto ?

Python multilínea con statement

¿Cuál es una forma limpia de crear una multilínea with python? Quiero abrir varios archivos dentro de una sola, pero es lo suficientemente a la derecha que lo quiero en varias líneas. Me gusta esto: class Dummy: def __enter__(self): pass def __exit__(self, type, value, traceback): pass with Dummy() as a, Dummy() as b, Dummy() as […]

¿Cuál es la ventaja de usar la statement ‘with .. as’ en Python?

con abierto (“hello.txt”, “wb”) como f: f.write (“Hola Python! \ n”) parece ser el mismo que f = open(“hello.txt”, “wb”) f.write(“Hello Python!\n”) f.close() ¿Cuál es la ventaja de usar open .. como en lugar de f =? ¿Es solo azúcar sintáctica? ¿Solo guardando una línea de código?