Python has two ways to convert an object to a string: str(x)
and repr(x)
. str
is supposed to be user-readable, and repr
is more technical, e.g. for debugging purposes.
To my surprise, if I have a list of things, str(list)
and repr(list)
do the same thing and include a repr
of each item. I would expect str(list)
to include str
of the list items, and repr(list)
to include repr
of the items.
Apparently, I am not alone: back in 2008 this was proposed by Oleg Broytman and Jim J. Jewett (PEP 3140), but rejected, because “Guido said it would cause too much disturbance too close to Beta“. It is causing disturbance ever since, I suppose…