title: Class attribute or argument's default value
body: <p>I've found the following open source code in Python:</p>
  
  <pre><code>class Wait:
  
    timeout = 9
  
    def __init__(self, timeout=None):
  
      if timeout is not None:
          self.timeout = timeout
      ...
  </code></pre>
  
  <p>I'm trying to understand if there are advantages of the code above vs using default argument's value:</p>
  
  <pre><code>class Wait:
  
     def __init__(self, timeout=9):
       ...
  </code></pre>