Best Practice Question

Dave Angel davea at davea.name
Tue Feb 5 12:52:23 CET 2013


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



More information about the Python-list mailing list