Need help: Compiling Python-Code &In-Reply-To=

Larry Bates larry.bates at websafe.com`
Fri May 2 17:39:36 EDT 2008


CRAIG DALTON wrote:
> Hi, 
> 
> I'm looking to append several text files in one director and out put the combined files into another director. I'm new to Python and just can't get it to work. So far I've been able to create a file in the desired directory but it isn't pulling any of the data in the originating directory. Could please look at my code and tell me what I'm doing wrong.
> 
> import os,shutil
> f=open("c:\\output\\testing1.txt","a+")
> for r,d,fi in os.walk("c:\\test"):
>     for files in fi:
>         if files.endswith(".txt"):                         
>             g=open(os.path.join(r+,files))
>             shutil.copyfileobj(g,f)
>             g.close()
> f.close()
> 
> Any help would be great.
> 
> Thanks, 
> 
> Craig Dalton
> Business Applications Systems Analyst
> Sentara Healthcare Systems
> Information Technology
> cxdalton at sentara.com
> 
> 

I don't think what you pasted will work at all.  The r+ should produce a syntax 
error on the g=open(os.path.join(r+,files) line.

No real reason to get shutil involved in this.

try something like this (not tested):

outfp=open("c:\\output\\testing1.txt", 'w')
for root,dirs,files in os.walk("c:\\test"):
     for fname in files:
         if fname.endswith(".txt"):
             infp=open(os.path.join(root, fname), 'r')
             of.write(infp.read())
             infp.close()

outfp.close()

or if the files are binary:

use 'wb' and 'rb' instead of 'w' and 'r'

BTW - This will concatenate ALL the .TXT files in c:\test as well as any files 
in any subfolders into a single output file.

-Larry



More information about the Python-list mailing list