What is the difference between class and data attributes?
<p>To quote diveintopython,</p>

<blockquote>
  <p>"You already know about data attributes, which are variables owned by
  a specific instance of a class. Python also supports class attributes,
  which are variables owned by the class itself."</p>
</blockquote>

<p>In what sense are class attributes owned by a class? If you change the value of a class attribute in a specific instance, that change is only reflected in that instance (and not in other instances of the class).</p>

<p>From my vantage point this makes class attributes fundamentally the same as data (i.e. instance) attributes (notwithstanding the syntactic differences).</p>

<p>In C++ change the value of a  "class variable", and that change is reflected in all instances.</p>

<p>What is the difference between the two?</p>
