try print pass management manage exceptions example error python ioerror

python - print - Región: IOError:[Errno 22] modo no válido(''w'') o nombre de archivo



stopiteration python (4)

Además, Python también da este mensaje cuando intenta abrir un archivo> 50 MB desde una unidad compartida de SharePoint.

https://support.microsoft.com/en-us/help/2668751/you-cannot-download-more-than-50-mb-or-upload-large-files-when-the-upl

No estoy seguro de por qué, pero por alguna razón, siempre que tengo "región" en el nombre de archivo del archivo de salida, me da este error:

IOError: [Errno 22] modo no válido (''w'') o nombre de archivo: ''ruta / regionlog.txt''

Lo hace para "region.txt" , "logregion.txt" , etc.

class writeTo: def __init__(self, stdout, name): self.stdout = stdout self.log = file(name, ''w'') #here is where it says the error occurs output = os.path.abspath(''path/regionlog.txt'') writer = writeTo(sys.stdout, output) #and here too

¿Por qué es esto? Realmente me gustaría nombrar mi archivo "regionlog.txt" pero sigue apareciendo ese error. ¿Hay alguna manera de evitarlo?


En el lenguaje estándar de C, /t , /n , /r son caracteres de escape. /t es una transversal a la siguiente posición TAB. /n es una nueva línea y /r es un retorno de carro. ¡Debes usar //r o /r , y resolverás el problema!


Otra solución simple es cambiar las instancias "/ r" en la ruta del nombre de archivo a "/ R"


Utilice barras diagonales hacia adelante:

''path/regionlog.txt''

O cuerdas crudas:

r''path/regionlog.txt''

O al menos escapar de sus barras invertidas:

''path//regionlog.txt''

Es un retorno de carro.

Otra opción: use os.path.join y no tendrá que preocuparse por las barras diagonales:

output = os.path.abspath(os.path.join(''path'', ''regionlog.txt''))