Why do I need to set the zipped list as a variable?

What is the advantage in the zip exercise of creating the last variable “list_of_names_and_dogs_names” when it does not appear to be required?

I was able to produce the required output from the exercise three different ways… as follows:

names = [‘Jenny’, ‘Alexus’, ‘Sam’, ‘Grace’]
dogs_names = [‘Elphonse’, ‘Dr. Doggy DDS’, ‘Carter’, ‘Ralph’]

Option #1

names_and_dogs_names = zip(names, dogs_names)
list_of_names_and_dogs_names = print(list(names_and_dogs_names))

Output:
[(‘Jenny’, ‘Elphonse’), (‘Alexus’, ‘Dr. Doggy DDS’), (‘Sam’, ‘Carter’), (‘Grace’, ‘Ralph’)]

Option #2

names_and_dogs_names = zip(names, dogs_names)
print(list(names_and_dogs_names))

Output:
[(‘Jenny’, ‘Elphonse’), (‘Alexus’, ‘Dr. Doggy DDS’), (‘Sam’, ‘Carter’), (‘Grace’, ‘Ralph’)]

Option #3

names_and_dogs_names = zip(names, dogs_names)
list_of_names_and_dogs_names = (list(names_and_dogs_names))
print(list_of_names_and_dogs_names)

Output:
[(‘Jenny’, ‘Elphonse’), (‘Alexus’, ‘Dr. Doggy DDS’), (‘Sam’, ‘Carter’), (‘Grace’, ‘Ralph’)]

In this simple example? Not much, but in the grander scheme of things, quite useful that we only have to convert to list once and can use it multiple times

What does that demonstrate, as in something of value?

>>> names = ['Jenny', 'Alexus', 'Sam', 'Grace']
>>> dogs_names = ['Elphonse', 'Dr. Doggy DDS', 'Carter', 'Ralph']
>>> names_and_dogs_names = zip(names, dogs_names)
>>> list_of_names_and_dogs_names = print(list(names_and_dogs_names))
[('Jenny', 'Elphonse'), ('Alexus', 'Dr. Doggy DDS'), ('Sam', 'Carter'), ('Grace', 'Ralph')]
>>> list_of_names_and_dogs_names
>>>