I create a.py and b/__init__.py:
    $ ls
    $ cat > a.py
    import b
    print "a"
    $ mkdir b
    $ cat > b/__init__.py
    print "b"
It works as expected:
    $ python a.py 
    b
    a
I remove b/__init__.py and create b.py in the top folder:
    $ rm b/__init__.py
    $ cat > b.py
    print "new b"
    $ python a.py 
    b
    a
It doesn't print "new b", instead it still prints "b". Why?
 
     
    