Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #5056
| Date | 2011-05-10 08:51 +0300 |
|---|---|
| From | Claudiu Popa <cpopa@bitdefender.com> |
| Subject | Re: Custom string joining |
| References | <254518825.20110507153133@bitdefender.com> <BANLkTim-94Zfq1o0P5DnAKfywR=cTm2z9Q@mail.gmail.com> <4DC84B2E.9090209@free.fr> <354289288.20110509232527@bitdefender.com> <iq9sk5$7m9$1@dough.gmane.org> |
| Newsgroups | comp.lang.python |
| Message-ID | <mailman.1370.1305006718.9059.python-list@python.org> (permalink) |
Hello Terry,
Thanks, I understand now.
Tuesday, May 10, 2011, 2:16:24 AM, you wrote:
> On 5/9/2011 4:25 PM, Claudiu Popa wrote:
>> I already told in the first post that I've implemented __str__ function,
>> but it doesn't seems to be automatically called.
> No, Python does not auto-coerce to strings (only between numbers).
> You have to be explicit by calling str. Karim's statement "You just have
> to implement __str__() python special method for your "custom_objects".
> " means that str will then work.
>> For instance, the following example won't work:
>>
>>>>> class a:
>> def __init__(self, i):
>> self.i = i
>> def __str__(self):
>> return "magic_function_{}".format(self.i)
>>>>> t = a(0)
>>>>> str(t)
>> 'magic_function_0'
>>>>> "".join([t])
> print('\n'.join(str(ob) for ob in [a(0), a(1), a(None)]))
> magic_function_0
> magic_function_1
> magic_function_None
--
Best regards,
Claudiu
Back to comp.lang.python | Previous | Next | Find similar | Unroll thread
Re: Custom string joining Claudiu Popa <cpopa@bitdefender.com> - 2011-05-10 08:51 +0300
csiph-web