0. There is no way to 'print references' in python (that I'm aware of). The
question is: "Why is my object transformed to a string using the default
method rather than my __str__?"
1. Is this Python 2 or 3?
2. In my python 2.6, you can get what you want be defining __repr__ instead of
__str__.
Hope this helps,
Shai.
On Wednesday 10 June 2009 17:28:20 Amit Dor-Shifer 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
>
> _______________________________________________
> Python-il mailing list
> [email protected]
> http://hamakor.org.il/cgi-bin/mailman/listinfo/python-il
_______________________________________________
Python-il mailing list
[email protected]
http://hamakor.org.il/cgi-bin/mailman/listinfo/python-il