Vedran Čačić added the comment:

By that line of reasoning, we would probably never change anything. :-( I 
searched the documentation, and the exact behaviour isn't documented anywhere. 
In fact all examples are of the kind where there is an even number of fill 
chars. I thought it was ok to "break" undocumented things.

As for a practical problem, here is how I encountered it. I had a format that 
centered something inside a constant-width column. format("^79", title) it was, 
I think. Then, as it usually happens, things were generalized and the width was 
customizable. Of course, I could have used "{:^{}}".format(title, width), but 
title.center(width) really seemed like a better option.

Imagine my horror when a test failed. At first I thought, ok, format puts extra 
space on one side, .center at the other, no big deal. But then I changed it, 
and it failed again. Many time and lost nerves later (not something I usually 
associate with Python), I realized that those two use different _methods_ of 
calculating the distribution of spaces.

At that moment, I really thought it must be a bug. But I went to the docs, and 
they never said anything about where an extra fill char is put. So yes, it is 
_theoretically_ possible that this is exactly the intended behaviour. But I 
really think it's not the case.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue23624>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to