... foo=100
File "<stdin>", line 2
foo=100
^
IndentationError: expected an indented block
>>> class a:
... foo=100
... def funcr(a,b)
File "<stdin>", line 3
def funcr(a,b)
^
SyntaxError: invalid syntax
>>> class a:
... foo=100
... def fufnc(a,b):
... return a+b
...
>>> dir(a)
['__doc__', '__module__', 'foo', 'fufnc']
>>> vars(a)
{'fufnc': <function fufnc at 0x7f36c560faa0>, '__module__': '__main__', 'foo': 100, '__doc__': None}
>>> type(a)
<type 'classobj'>
>>> b=a()
>>> dir(b)
['__doc__', '__module__', 'foo', 'fufnc']
>>> vars(b)
{}
>>> class c(object):
... fooo=200
...
>>> dir(a)
['__doc__', '__module__', 'foo', 'fufnc']
>>> dir(c)
['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'fooo']
>>> vars(c)
<dictproxy object at 0x7f36c5626830>
>>> c.__dict__
<dictproxy object at 0x7f36c5626328>
>>> d=c()
>>> dir(d)
['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'fooo']
>>> vars(d)
{}
>>> d.__dict__
{}
>>> a.__dict__
{'fufnc': <function fufnc at 0x7f36c560faa0>, '__module__': '__main__', 'foo': 100, '__doc__': None}
>>> b.__dict__
{}
>>>
---
>>> vars()
{'a': <class __main__.a at 0x7f36c56186b0>, 'c': <class '__main__.c'>, 'b': <__main__.a instance at 0x7f36c5627a28>, 'd': <__main__.c object at 0x7f36c56253d0>, 'di': {}, '__builtins__': <module '__builtin__' (built-in)>, 'value': {'a': 'WWWWWWWWWWW'}, 'li': [], 'i': '1', 'key': 'diii', '__name__': '__main__', '__package__': None, 'os': <module 'os' from '/usr/lib64/python2.6/os.pyc'>, '__doc__': None, 'diii': {'a': 'WWWWWWWWWWW'}}
>>> vars().items()
[('a', <class __main__.a at 0x7f36c56186b0>), ('c', <class '__main__.c'>), ('b', <__main__.a instance at 0x7f36c5627a28>), ('d', <__main__.c object at 0x7f36c56253d0>), ('di', {}), ('__builtins__', <module '__builtin__' (built-in)>), ('value', {'a': 'WWWWWWWWWWW'}), ('li', []), ('i', '1'), ('key', 'diii'), ('__name__', '__main__'), ('__package__', None), ('os', <module 'os' from '/usr/lib64/python2.6/os.pyc'>), ('__doc__', None), ('diii', {'a': 'WWWWWWWWWWW'})]
>>> print "\n".join(["%s=%s" %(key,value) for key,value in vars().items()])
a=__main__.a
c=<class '__main__.c'>
b=<__main__.a instance at 0x7f36c5627a28>
d=<__main__.c object at 0x7f36c56253d0>
di={}
__builtins__=<module '__builtin__' (built-in)>
value={'a': 'WWWWWWWWWWW'}
li=[]
_[1]=['a=__main__.a', "c=<class '__main__.c'>", 'b=<__main__.a instance at 0x7f36c5627a28>', 'd=<__main__.c object at 0x7f36c56253d0>', 'di={}', "__builtins__=<module '__builtin__' (built-in)>", "value={'a': 'WWWWWWWWWWW'}", 'li=[]']
i=1
key=diii
__name__=__main__
__package__=None
os=<module 'os' from '/usr/lib64/python2.6/os.pyc'>
__doc__=None
diii={'a': 'WWWWWWWWWWW'}
>>>