Custom string joining

Karim karim.liateni at free.fr
Mon May 9 16:14:38 EDT 2011


On 05/07/11 16:25, Chris Rebert wrote:
> On Sat, May 7, 2011 at 5:31 AM, Claudiu Popa<cpopa at bitdefender.com>  wrote:
>> Hello Python-list,
>>
>> I  have  an object which defines some methods. I want to join a list or
>> an iterable of those objects like this:
>>
>> new_string = "|".join(iterable_of_custom_objects)
>>
>> What   is   the   __magic__  function that needs to be implemented for
>> this case to work?  I  though  that  __str__  is sufficient but it doesn't seems to
>> work. Thanks in advance.
> You need to do the string conversion yourself; .join() doesn't do it
> for you, due to strong typing. It only accepts iterables of strings:
> new_string = "|".join(str(x) for x in iterable_of_custom_objects)

You just have to implement __str__() python special method for your 
"custom_objects".

Regards
Karim
> Cheers,
> Chris
> --
> http://rebertia.com




More information about the Python-list mailing list