Este es un remanente de la marcación de formato C:
print "%*s, blah" % (max_title_width,column)
Si desea que el texto justificado a la izquierda (para las entradas más cortas que max_title_width
), poner un '-' antes del '*'.
>>> text = "abcdef"
>>> print "<%*s>" % (len(text)+2,text)
< abcdef>
>>> print "<%-*s>" % (len(text)+2,text)
<abcdef >
>>>
Si el campo len es más corta que la cadena de texto, la cadena a punto de desbordar:
>>> print "<%*s>" % (len(text)-2,text)
<abcdef>
Si desea recortar a una longitud máxima, utilice el '' campo de la precisión del formato de marcador de posición:
>>> print "<%.*s>" % (len(text)-2,text)
<abcd>
poner a todos juntos de esta manera:
%
- if left justified
* or integer - min width (if '*', insert variable length in data tuple)
.* or .integer - max width (if '*', insert variable length in data tuple)
En Python 2.4 y posterior, las [] son innecesarias en su cálculo de max_title_width; solo crean una lista que descarta inmediatamente después de calcular el máximo. Ver http://www.python.org/dev/peps/pep-0289/. – PaulMcG