Python - Problema con '\' y '\\' al leer imagen.

 
Vista:
Imágen de perfil de Zhisi

Problema con '\' y '\\' al leer imagen.

Publicado por Zhisi (15 intervenciones) el 22/09/2016 09:39:36
Muy buenas!

A ver si me podéis ayudar con el siguiente problema al intentar abrir una imagen desde python. La imagen con la que quiero trabajar no está en el mismo directorio que el .py con el que estoy trabajando, por lo que he de poner la dirección completa del archivo. Aquí es donde tengo problemas y copiar el archivo en la misma carpeta no es una opción. Si copio y pego la dirección del archivo, me da error. Probando con diferentes imágenes, resulta que en ocasiones el problema es simplemente poner dos barras \\ en lugar de una \ como separador (aunque en la dirección original sólo va con una barra).
Esto me sucede en los dos PC en los que he probado a correr el programa.
Copio el código:
1
2
3
4
from PIL import Image
 
im = Image.open('C:\Users\jerodriguez\Documents\Trabajos\Laboratorio\2016.09.21 Talbot fleje\02.bmp')
im.show()

Más sencillo no puede ser.
Al ejecutarlo, el terminal dice lo siguiente:


runfile('C:/Users/jerodriguez/Documents/Trabajos/Python/Imagenes/Procesado imagenes (I).py', wdir='C:/Users/jerodriguez/Documents/Trabajos/Python/Imagenes')
Traceback (most recent call last):

File "<ipython-input-8-74adde231daa>", line 1, in <module>
runfile('C:/Users/jerodriguez/Documents/Trabajos/Python/Imagenes/Procesado imagenes (I).py', wdir='C:/Users/jerodriguez/Documents/Trabajos/Python/Imagenes')

File "C:\Python27\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 685, in runfile
execfile(filename, namespace)

File "C:\Python27\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 71, in execfile
exec(compile(scripttext, filename, 'exec'), glob, loc)

File "C:/Users/jerodriguez/Documents/Trabajos/Python/Imagenes/Procesado imagenes (I).py", line 10, in <module>
im = Image.open('C:\Users\jerodriguez\Documents\Trabajos\Laboratorio\2016.09.21 Talbot fleje\02.bmp')

File "C:\Python27\lib\site-packages\PIL\Image.py", line 2248, in open
fp = builtins.open(fp, "rb")

IOError: [Errno 22] invalid mode ('rb') or filename: 'C:\\Users\\jerodriguez\\Documents\\Trabajos\\Laboratorio\x816.09.21 Talbot fleje\x02.bmp'



¿Alguna explicación o sugerencia?
Gracias por la ayuda!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de kip
Val: 1.120
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Problema con '\' y '\\' al leer imagen.

Publicado por kip (257 intervenciones) el 22/09/2016 15:00:42
Hola, intentalo asi:

1
im = Image.open("C:/Users/jerodriguez/Documents/Trabajos/Laboratorio/2016.09.21 Talbot fleje/02.bmp", 'r')

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de Zhisi

Problema con '\' y '\\' al leer imagen.

Publicado por Zhisi (15 intervenciones) el 22/09/2016 16:19:12
Funciona!!
Muchas gracias. Había probado a cambiar las barras \ por las / pero sin poner 'r' al final. Cuál es la función de 'r' o qué significa?
Y por qué hay que cambiar unas barras por otras para que interprete correctamente la dirección?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar