[Python-ideas] Have a "j" format option for lists

Eric V. Smith eric at trueblade.com
Wed May 9 09:42:49 EDT 2018


On 5/9/18 8:39 AM, Facundo Batista wrote:
> This way, I could do:
>
>>>> authors = ["John", "Mary", "Estela"]
>>>> "Authors: {:, j}".format(authors)
> 'Authors: John, Mary, Estela'
>
> In this case the join can be made in the format yes, but this proposal
> would be very useful when the info to format comes inside a structure
> together with other stuff, like...
>
>>>> info = {
> ...   'title': "A book",
> ...   'price': Decimal("2.34"),
> ...   'authors: ["John", "Mary", "Estela"],
> ... }
> ...
>>>> print("{title!r} (${price}) by {authors:, j}".format(**info))
> "A book" ($2.34) by John, Mary, Estela
>
> What do you think?

Among other things, I think you should use .format_map(info) instead of 
.format(**info)!

Eric



More information about the Python-ideas mailing list