2016-12-08 | Paul Boddie | raw annotate files changeset graph | Ensure that base classes provide the attributes they use. Added tests demonstrating the use of attributes in base classes that are not necessarily defined in those classes or in some subclasses. |
1 import operator 2 3 class C: 4 pass 5 6 c = C() 7 print c.__name__ # __main__.C 8 print C.__name__ # __main__.C 9 10 # If it were defined, operator.__name__ would be __builtins__.core.module. 11 12 print operator.__mname__ 13 14 # If it were defined, operator.add.__name__ would be __builtins__.core.function. 15 16 print operator.add.__fname__