Input files:
$ cat file1
Mr A
Mr B
Mrs C
Mr D
Mr E
$ cat file2
890
123
213
123
Output required:
Construct record sets with first line from file1 and next line from file2. i.e. the output should look something like this:
Record 1
Mr A
890
Record 2
Mr B
123
Record 3
Mrs C
213
Record 4
Mr D
123
Record 5
Mr E
--
The python script:
c=1
file1 = open('file1', 'r')
file2 = open('file2', 'r')
for lineA in file1:
print "Record "+str(c)
print lineA,
lineB=file2.readline()
if lineB == '':
print "--"
else:
print lineB
c = c + 1
Related functions and modules:
1) f.readline(): It reads a single line from the file and a newline character (\n) is left at the end of the string.
If f.readline() returns an empty string, it means the end of the file has been reached.
For a blank line it returns '\n', a string containing only a single newline. read more here (section 7.2.1)
2) str function: An example.
>>> c=2
>>> print "value is "+c
Traceback (most recent call last):
File "", line 1, in
TypeError: cannot concatenate 'str' and 'int' objects
>>> print "value is "+str(c)
value is 2