Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #2558

Re: string to path problem

References <7f0a2a35-8ae8-4625-9cef-8516b142cd25@f18g2000yqd.googlegroups.com> <mailman.179.1301890636.2990.python-list@python.org> <2939bffd-d4b5-453f-a5af-1dea9621e67f@k9g2000yqi.googlegroups.com>
From Kushal Kumaran <kushal.kumaran+python@gmail.com>
Date 2011-04-04 14:36 +0530
Subject Re: string to path problem
Newsgroups comp.lang.python
Message-ID <mailman.0.1301908032.15055.python-list@python.org> (permalink)

Show all headers | View raw


On Mon, Apr 4, 2011 at 9:48 AM, ecu_jon <hayesjdno3@yahoo.com> wrote:
> On Apr 4, 12:17 am, Chris Rebert <c...@rebertia.com> wrote:
>> On Sun, Apr 3, 2011 at 8:30 PM, ecu_jon <hayesjd...@yahoo.com> wrote:
>> > i am writing a basic backup program for my school. so they wanted the
>> > possibility to be able to set source/destination from a config file.
>> > my source/destination was fine before, i would build it up with
>> > functions, like 1 that got the user-name, and put it all together with
>> > os.path.join. but if they set a source in the config file to something
>> > like c:\users\jon\backup  python tries to read from c:\\users\\jon\
>> > \backup, and throws out a read permission (because it doesn't
>> > exist ...).
>>
>> Please give the exact error message and full exception traceback that
>> you're getting.
>>
>> Cheers,
>> Chris
> Traceback (most recent call last):
>  File "I:\college\spring11\capstone-project\testing1.py", line 39, in
> <module>
>    shutil.copy2(source1, destination)
>  File "C:\Python27\lib\shutil.py", line 127, in copy2
>    copyfile(src, dst)
>  File "C:\Python27\lib\shutil.py", line 81, in copyfile
>    with open(src, 'rb') as fsrc:
> IOError: [Errno 13] Permission denied: 'c:\\users\\jon\\backup'
>
> i have permission to c:\users\jon\*
> but c:\\* obviously does not exist.

The extra backslashes in the string literal are there to "escape" the
required backslashes.  This is required because the backslash
character is used to introduce certain special characters in strings,
such as tabs and newlines.  The actual string does not contain the
extra backslashes.  This is documented in extensive detail in the
language reference:
http://docs.python.org/reference/lexical_analysis.html#string-literals.
 But you might want to start with the tutorial:
http://docs.python.org/tutorial/introduction.html#strings

Example:

>>> s = 'c:\\users\\jon\\backup'
>>> print s
c:\users\jon\backup
>>>

Is c:\users\jon\backup a directory?  The shutil.copyfile function will
only copy a file.  There is a shutil.copytree that will copy an entire
directory tree.

-- 
regards,
kushal

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

string to path problem ecu_jon <hayesjdno3@yahoo.com> - 2011-04-03 20:30 -0700
  Re: string to path problem Chris Rebert <clp2@rebertia.com> - 2011-04-03 21:17 -0700
    Re: string to path problem ecu_jon <hayesjdno3@yahoo.com> - 2011-04-03 21:18 -0700
      Re: string to path problem Kushal Kumaran <kushal.kumaran+python@gmail.com> - 2011-04-04 14:36 +0530
        Re: string to path problem ecu_jon <hayesjdno3@yahoo.com> - 2011-04-04 08:21 -0700

csiph-web