I’m not sure if it will help you with the
zip function at this point. Perhaps I misunderstand your question but you seem more curious about the terminology than the result. I’d encourage you to just use the function and test the outputs and if that’s not enough look for examples of the
zip function in use.
If you’re struggling with the terminology you can always look at the glossary-
To answer your more direct questions (based on python3 since you asked about the iterator version)-
For your example none of those items are iterator objects. The list itself is an iterable object (most sequences are iterable, e.g. lists, dicts, sets etc.).
zip function takes two iterables and returns an iterator. In my given example you had two iterable sequences of [1, 2, 3] and [“a”, “b”, “c”]. Calling
zip with these two sequences creates an iterator object (zipped_dat). If you were to iterate through every element in zipped_dat you would produce three separate elements. The first element is (1, “a”), a tuple which contains an integer and a single element string, the second would be (2, “b”) as per the example and so on.
In case my use of element still wasn’t clear, an extra example-
for element in ["a", "b", "c"]:
print(element) # each element here is just a single string