Inconsistency in python help('string') versus help(list)?
<p>When I type <code>help('string')</code> in the python interpreter I get information about the string class. There,<code>upper()</code> is indicated as a function. Yet I can only call it as a method like     <code>"hi".upper()</code> instead of <code>upper("hi")</code>.<br>
So one could assume that any method will be indicated as a function in the docstrings of the built in modules. Yet when I do <code>help('list')</code> , methods of the list class are indicated as methods in the docstrings!!<br>
Why is this so? Only because the person who wrote the doctrings was inconsistent or that different people wrote it? Or do these methods(the ones called 'functions' versus the ones called 'methods' in the docstrings) actually have different properties?</p>
