another python style question -- copying a data file

Gerhard Häring gh at ghaering.de
Tue Apr 22 13:47:16 EDT 2003


Guy Middleton wrote:
> Ok, here's another style question.
> 
> I want to copy a data file, but if the file doesn't already exist, I don't
> care.  I do care about any other errors, such as wrong permissions.
> 
> I have the following code, is this a typical Python way to do this?
> 
>     try:
>         os.stat(DATAFILE)
>         os.system("cp %s %s.new" % (DATAFILE, DATAFILE))
>     except OSError, arg:
>         # ENOENT is ok, we didn't do the copy
>         # anything else is a problem
>         if arg.errno != errno.ENOENT:
>             raise

Here's what I'd do:

if os.path.exists(DATAFILE):
     shutil.copyfile(DATAFILE, "%s.new" % DATAFILE)

-- Gerhard





More information about the Python-list mailing list