M
moogyd
Hi group,
I have a basic question on the zip built in function.
I am writing a simple text file comparison script, that compares line
by line and character by character. The output is the original file,
with an X in place of any characters that are different.
I have managed a solution for a fixed (3) number of files, but I want
a solution of any number of input files.
The outline of my solution:
for vec in zip(vec_list[0],vec_list[1],vec_list[2]):
res = ''
for entry in zip(vec[0],vec[1],vec[2]):
if len(set(entry)) > 1:
res = res+'X'
else:
res = res+entry[0]
outfile.write(res)
So vec is a tuple containing a line from each file, and then entry is
a tuple containg a character from each line.
2 questions
1) What is the general solution. Using zip in this way looks wrong. Is
there another function that does what I want
2) I am using set to remove any repeated characters. Is there a
"better" way ?
Any other comments/suggestions appreciated.
Thanks,
Steven
I have a basic question on the zip built in function.
I am writing a simple text file comparison script, that compares line
by line and character by character. The output is the original file,
with an X in place of any characters that are different.
I have managed a solution for a fixed (3) number of files, but I want
a solution of any number of input files.
The outline of my solution:
for vec in zip(vec_list[0],vec_list[1],vec_list[2]):
res = ''
for entry in zip(vec[0],vec[1],vec[2]):
if len(set(entry)) > 1:
res = res+'X'
else:
res = res+entry[0]
outfile.write(res)
So vec is a tuple containing a line from each file, and then entry is
a tuple containg a character from each line.
2 questions
1) What is the general solution. Using zip in this way looks wrong. Is
there another function that does what I want
2) I am using set to remove any repeated characters. Is there a
"better" way ?
Any other comments/suggestions appreciated.
Thanks,
Steven