Custom string joining
Chris Rebert
clp2 at rebertia.com
Sat May 7 10:25:58 EDT 2011
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)
Cheers,
Chris
--
http://rebertia.com
More information about the Python-list
mailing list