Alignement des chaînes de texte en Python

Dans cet article vous allez apprendre comment formater un texte en appliquant le type d’alignement que vous désirez.

Pour l’alignement de base des chaînes de caractères, les méthodes ljust(), rjust() et center() peuvent être utilisées. Par exemple:

>>>texte = 'jeune homme'

>>> texte.ljust(20)
'jeune homme         '

>>> texte.rjust(20)
'         jeune homme'

>>> texte.center(20)
'    jeune homme     '

>>>

 

Toutes ces méthodes acceptent également le caractère optionnel &&65.180&&fill. Par exemple:

>>> text.rjust(20,'=')
'=========Hello World'
>>> text.center(20,'*')
'****Hello World*****'
>>>

 

La fonction format() peut également être utilisée pour aligner facilement un texte en Python. Tout ce que vous avez à faire est d’utiliser les caractères <, >, ou ^ avec une largeur désirée. Par exemple:

>>> format(text, '>20')
'         Hello World'
>>> format(text, '<20')
'Hello World         '
>>> format(text, '^20')
'    Hello World     '
>>>

 

Si vous voulez inclure un caractère de remplissage autre qu’un espace, spécifiez-le avant le caractère d’alignement:

>>> format(text, '=>20s')
'=========Hello World'

>>> format(text, '*^20s')
'****Hello World*****'
>>>

 

Ces codes de format peuvent également être utilisés dans la méthode format() lors du formatage de valeurs multiples. Par exemple :

>>> '{:>10s} {:>10s}'.format('Hello', 'World')
'     Hello      World'

>>>

 

Un des avantages de la méthode format() est qu’il n’est pas spécifique aux chaînes de caractères. Il fonctionne avec n’importe quelle valeur, ce qui le rend plus général. Par exemple, vous pouvez l’utiliser avec des chiffres:

>>> x = 1.2345
>>> format(x, '>10')
'    1.2345'
>>> format(x, '^10.2f')
'   1.23   '
>>>

 

Dans un ancien code, vous verrez également l’opérateur % utilisé pour formater le texte. Par exemple:

>>> '%-20s' % text
'Hello World         '
>>> '%20s' % text
'         Hello World'
>>>

 

Cependant, dans le nouveau code, vous devriez probablement préférer l’utilisation de la fonction/méthode format() est beaucoup plus puissant que ce qui est fourni avec l’opérateur %. De plus, format() est plus général que l’utilisation de la méthode jlust(), rjust(), ou center() dans la mesure où il fonctionne avec tout type d’objet.

LAISSER UN COMMENTAIRE

Please enter your comment!
Please enter your name here