# namespace.py # Let's get started import m print "m.x:", m.x m.x += 1 print "m.x:", m.x x = "foo" print "x:", x print # Now let's play some mutable/immutable tricks from m import x print "x:", x m.x += 1 print "x:", x print "m.x:", m.x m.x = [x] x = m.x print "x:", x m.x[0] += 1 print "x:", x print "m.x:", m.x m.f() print "x:", x print "m.x:", m.x print # Finally, let's play some tricks with objects class C: pass x = C() m.x = x x.a = "foo" print "m.x.a:", m.x.a def f(): return 1 m.x = f print "m.x():", m.x() def g(): return "spam" f.a = g print "m.x.a():", m.x.a() q = m print "q.x():", q.x() D = C print "D's type:", type(D)