Python's generic list structure is integrated into a number of language features. We don't need to import them and rarely need to use method syntax to access their features. We can visit all the items in a list without explicitly requesting an iterator object, and we can construct a list (as with a dictionary) with very simple-looking syntax. Further, list comprehensions and generator expressions turn them into a veritable Swiss Army knife of computing functionality.
If you don't know how to create or append to a list, how to retrieve items from a list, or what slice notation is, we direct you to the official Python tutorial, posthaste. It can be found online at http://docs.python.org/3/tutorial/. In this section, we'll move beyond the basics to cover when lists should be used, and their nature as objects.
In Python, lists should normally be used when we want to store several instances of the same type of object; lists of strings...