Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: desnight en 20 Marzo 2008, 20:11 pm



Título: shutil.copy en python
Publicado por: desnight en 20 Marzo 2008, 20:11 pm
Es que estuve probando este módulo lo he puesto así:

Código
  1. import shutil
  2.  
  3. src = 'C:\Archivos'
  4. dst = 'C:\windows\copia de archivos'
  5.  
  6. shutil.copy(src, dst)
  7.  

Me da error y me pone:

Traceback (most recent call last):
  File "C:\Documents and Settings\fran2\Escritorio\nuevo.py", line 7, in <module>
    shutil.copy(src, dst)
  File "C:\Python25\lib\shutil.py", line 80, in copy
    copyfile(src, dst)
  File "C:\Python25\lib\shutil.py", line 46, in copyfile
    fsrc = open(src, 'rb')
IOError: [Errno 13] Permission denied: 'C:\\Archivos'


¿Por qué puede ser?Gracias de antemano.

Saludos


Título: Re: shutil.copy en python
Publicado por: knello en 29 Marzo 2008, 03:27 am
Pues creo que es porque al usar diagonal invertida dentro de un string  esta funciona para escapar código por ejemplo \n se convierte en nueva linea, \t en tab, etc.
si deceas usar una backslash dentro de un string debes escaparla a sí  mismo de otra manera se interpretará como si quisieras escapar el caracter consecuente:

Código
  1. #Ejemplo:
  2. 'C:\\Archivos'
  3.  
  4. #o bien usar una raw string, que es una string sin escapes:
  5. r 'C:\Archivos'


Título: Re: shutil.copy en python
Publicado por: desnight en 31 Marzo 2008, 22:07 pm
Me sigue poniendo lo mismo no se que puede ser.

Saludos