When we zip two lists of equal length, we get a zip object of the same length comprised of name, age pairs as tuples. This is not a list unless we cast it to one, and printing will consume the object. I’m not sure that we can extend a zip object (rather doubtful given the nature of iterators) so we have to go back to the original lists and extend them.
names = ['Ainsley', 'Ben', 'Chani']
ages = [32, 41, 29]
We can extend them with
append() or by concatenating a list as follows,
names += ['Dupak']
ages += 
Or we can extend a list cast from a zip object. First, cast the list…
names_and_ages = list(names_and_ages)
That will consume the zip object but we have its tuples. Now we can append or concatenate another tuple, as suits…
names_and_ages += ('Dupak', 29)
which will give us,
[('Ainsley', 32), ('Ben', 41), ('Chani', 29), ('Dupak', 29)]
Bottom line, if we wish to continue using the data structure created with
zip(), then it must be cast to a list, first.