when you print a list, python prints a list view.
the standard representation of the list is to print the square brackets of the opening ( [ ), then the representation of each element is separated by a comma ( , ) closing the square bracket ( ] ). (more precisely, the representation of an object is what is returned when its member __repr__() ) is called). note that the standard unicode string representation is u'...' .
now when you print the string, you are not printing the string representation, you are printing the string (the value returned by calling the __str__() member). and the string does not include formatting characters such as Unicode flags, quotation marks, etc.
source share