That is because the list.__doc__
is a string.
When you just type list.__doc__
you will get the contents like this :
>>> list.__doc__ "list() -> new empty list\nlist(iterable) -> new list initialized from iterable's items"
However if you type print list.__doc__
>>> print list.__doc__ list() -> new empty list list(iterable) -> new list initialized from iterable's items
So the print function properly formats the string to include the linebreak.
Hope that helps :)