Best Practice Question

Jean-Michel Pichavant jeanmichel at sequans.com
Tue Feb 5 15:32:32 CET 2013



----- Original Message -----
> On 02/04/2013 11:23 PM, Anthony Correia wrote:
> > Just started learning Python.  I just wrote a simple copy files
> > script. I use Powershell now as my main scripting language but I
> > wanted to extend into the linux platform as well.  Is this the
> > best way to do it?
> >
> > import os
> >
> >      objdir = ("C:\\temp2")
> >      colDir = os.listdir(objdir)
> >      for f in colDir:
> >          activefile = os.path.join(objdir + "\\" + f)
> >          print ("Removing " + activefile + " from " + objdir)
> >          os.remove(activefile)
> >
> > In Powershell I would do this:
> >
> > $colDir = gci -path "c:\temp2"
> > $objDir = "C:\temp3"
> > ForEach($file in $colDir){
> >      #.Fullname lists the directory and filename together.  No need
> >      to do a join
> >      #beforehand.
> >      Copy-item $file.fullname -destination $objDir
> > }
> >
> 
> You started two nearly-identical threads, with nearly the same
> content.
>   I won't repeat the comments already posted in the other thread, but
> notice that your powershell script copies the file, while your Python
> "translation" deletes the file.  Big difference.
> 
> Next, you should use raw strings, or at least use the forward slash,
> rather than double backslashes in file path literals.
> 
> 
> 
> --
> DaveA

He must have hit the send button too early by mistake.
By the way, did someone ever notice that r'\' fails ? I'm sure there's a reason for that... (python 2.5) Anyone knows ?

r'\'
SyntaxError: EOL while scanning single-quoted string

r'\b'
'\\b'


JM


-- IMPORTANT NOTICE: 

The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


More information about the Python-list mailing list