Why does explicitly subclassing from object in python cause global NameError exceptions?
<p>Some legacy code I'm working with that works [code replaced by problem-reproducing code]:</p>

<pre><code>class foo:
    pass

class bar(foo):
    def __new__(cls):
        global BIZ
        if BIZ is not None:
            pass

bar()
</code></pre>

<p>but when I change it to </p>

<pre><code>class foo(object):
</code></pre>

<p>then python prints:</p>

<pre><code>Traceback (most recent call last):
  File "test.py", line 11, in &lt;module&gt;
    bar()
  File "test.py", line 8, in __new__
    if BIZ is not None:
NameError: global name 'BIZ' is not defined
</code></pre>

<p>Why is this?</p>
