> > Hi Richard, > > Just to check: what operating system are you running your program in? > Also, what version of Python? >
Hi Danny, using Linux and Python 2.7 > > > > ############################## > with open('input/test.xml', 'rU') as f1: ... > ############################## > > > Question: can you explain why the program is opening 'mod1.xml' in 'a' > append mode? Why not in 'w' write mode? > > > This may be important because multiple runs of the program will append > to the end of the file, so if you inspect the output file, you may be > confusing the output of prior runs of your program. Also, it's likely > that the output file will be malformed, since there should just be one > XML document per file. In summary: opening the output file in append > mode looks a bit dubious here. > > > > To your other question: > > > What am I missing? > > Likely, the lines being returned from f1 still have a line terminator > at the end. You'll want to interpose the '\x03' right before the line > terminator. Mark Laurence's suggestion to use: > > s = '\x02' + line[:-1] + '\x03\n' > > looks ok to me. > Actually, you solved it, but it required both with open('input/test.xml', 'rU') as f1:... and s = 'x02' + line[:-1] + 'x03\n' Either of the above alone do not resolve the issue, but both together do. As far as the write vs append, I understand your concerns but that is for testing during scripting only. Ultimately the script outputs to a socket on another machine, not to a file, so that gets commented out. The append is because I am using a 100 line test file with a for line in f1: statement in it, and I want the results for each line appended to the output file. I delete the results file before each run. Thanks for all the help! regards, Richard -- All internal models of the world are approximate. ~ Sebastian Thrun _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor