title: If the convention in Python is to capitalize classes, why then is list() not capitalized? Is it not a class?
body: <p>Often when I see class definitions <code>class Foo:</code>, I always see them start with upper case letters.</p>
  
  <p>However, isn't a list <code>[]</code> or a dict <code>{}</code> or some other built-in type, a class as well? For that matter, everything typed into the Python's IDLE which is a keyword that is automatically color coded in purple (with the Window's binary distribution), is itself a class, right?</p>
  
  <p>Such as <code>spam = list()</code></p>
  
  <p><code>spam</code> is now an instance of a <code>list()</code></p>
  
  <p>So my question is, why does Python allow us to first of all do something like <code>list = list()</code> when nobody, probably, does that. But also, why is it not <code>list = List()</code></p>
  
  <p>Did the developers of the language decide not to use any sort of convention, while it is the case that most Python programmers do name their classes as such?</p>