title: Rationale behind python method naming for string.find and list.index
body: <p>I wonder why people named these methods differently even though they're doing almost the same job. Wouldn't it be easier to understand/remember if they had the same name?</p>
  
  <p>According to documentations of <a href="https://docs.python.org/3/tutorial/datastructures.html" rel="nofollow noreferrer">list</a> and <a href="https://docs.python.org/2/library/string.html" rel="nofollow noreferrer">string</a>, they look like they are pretty much the same thing to me.</p>
  
  <blockquote>
  <pre><code>list.index(x[, start[, end]])
  </code></pre>
    
    <p>Return zero-based index in the list of the first item whose value is
    equal to x. Raises a ValueError if there is no such item.</p>
    
    <p>The optional arguments start and end are interpreted as in the slice
    notation and are used to limit the search to a particular subsequence
    of the list. The returned index is computed relative to the beginning
    of the full sequence rather than the start argument.</p>
  
  <pre><code>string.find(s, sub[, start[, end]])
  </code></pre>
    
    <p>Return the lowest index in s where the substring sub is found such
    that sub is wholly contained in s[start:end]. Return -1 on failure.
    Defaults for start and end and interpretation of negative values is
    the same as for slices.</p>
  </blockquote>