-1

I have two little file that contain : f = 'employé numero 1' at line 1 etc... f2 = 'a' at line 1 etc...

I want to write in f3 to have at the first line : 'employé numero 1 a' etc

here is my code. After execute, no error msg but f3 is still empty :

f = open(r'c:\temp\merge1.txt','w',encoding='utf8')
for i in range(5):  f.write(f"ligne {i+1}\n")
f.close()
f = open(r'c:\temp\merge1.txt','r',encoding='utf8')

f2 = open(r'c:\temp\merge2.txt','w',encoding='utf8')
for i in range(5):  liste = ['a','b','c']   f.write(liste[i] "\n")
f2.close()
f2 = open(r'c:\temp\merge2.txt','r',encoding='utf8')

f3 = open(r'c:\temp\merge3.txt','w',encoding='utf8')

for line in f:
    line_liste = line.split()
    for line2 in f2:
        line2_liste = line2.split()
        line_liste.append(line2_liste)
    f3.write(",".join(line_liste))
Niek de Klein
  • 8,524
  • 20
  • 72
  • 143

2 Answers2

0

There are a couple of errors in the first part of the code you posted above. I'm guessing that was a copy/paste problem.

For example, here i goes upto 5 but the liste only has 3 items in it. This causes an error.

for i in range(5):
    liste = ['a','b','c']
    f.write(liste[i] "\n")

I've re-written the for loops. It would be nice to see a complete output example but this, if I understand, is what you were looking for.

for line in f:
    line_liste = line.split()
    for line2 in f2:
        output_line = '{} {}'.format(line_liste[0], line2)
        f3.write(output_line)

contents of merge3.txt
ligne a
ligne b
ligne c

0
>>> f = open(r'c:\temp\merge1.txt','w',encoding='utf8')
>>> for i in range(5):
    f.write(f"ligne {i+1}\n")
>>> f.close()
>>> f = open(r'c:\temp\merge1.txt','r',encoding='utf8')

>>> f2 = open(r'c:\temp\merge2.txt','w',encoding='utf8')
>>> for i in range(5):
    liste = ['a','b','c']
    f.write(liste[i] "\n")
>>> f2.close()
>>> f2 = open(r'c:\temp\merge2.txt','r',encoding='utf8')

>>> f3 = open(r'c:\temp\merge3.txt','w',encoding='utf8')

>>> for line in f:
    line_liste = line.split()
    for line2 in f2:
        line2_liste = line2.split()
        line_liste.append(line2_liste)
    f3.write(",".join(line_liste))
>>> f3.close()