Printing dictionary values rather than references
Jeff McNeil
jeff at jmcneil.net
Wed Jun 10 11:15:41 EDT 2009
On Jun 10, 10:19 am, Amit Dor-Shifer <ami... at oversi.com> wrote:
> Hi all.
>
> I'd like to print-out a dictionary of objects. The printed values are
> references. How Do I print the actual objects.
>
> class MyClass:
> def __str__(self):
> return str(self.__dict__)
>
> if __name__ == '__main__':
> dict = dict()
> classA = MyClass()
> setattr(classA, "attr-1", "val-1")
>
> dict['a']= classA
> print classA
> ''' Desired output: {'attr-1': 'val-1'}'''
> print dict
> ''' Actual output: {'a': <__main__.MyClass instance at 0x79cfc8>}'''
>
> Thanks,
> Amit
class MyClass:
def __repr__(self): # <--- see http://docs.python.org/library/functions.html#repr
return str(self.__dict__)
HTH,
Jeff
mcjeff.blogspot.com
More information about the Python-list
mailing list