def expandtabs(self, tabsize=8) -> str
tabsize
espaces.
Tout dépend de s'il y a déjà des caractères utilisés dans la colonne en cours. L'exemple suivant, montre le comportement des tabulations utilisées au
milieu d'une chaîne de caractères (par défaut, une colonne de tabulation occupe 8 caractères).
>>> s = "James\tJason\tEthan" + "\n123456781234567812345678" >>> print(s) James Jason Ethan 123456781234567812345678 >>>
On voit bien dans l'exemple ci-dessus, que chaque prénom est bien placé dans sa colonne de 8 caractères. Par contre, il n'y a pas 8 espaces entre chaque prénom !
La méthode expandtabs
remplace chaque tabulation par le nombre d'espaces nécessaire pour passer le texte suivant sur la prochaine colonne de
texte.
>>> s = "James\tJason\tEthan" >>> s 'James\tJason\tEthan' >>> s2 = s.expandtabs() >>> s2 'James Jason Ethan' >>> print(s, s2, sep='\n') James Jason Ethan James Jason Ethan >>>
\t
) par très exactement 8 espaces et ainsi avoir chaque prénom espacé de 8 blancs,
veuillez préférer l'utilisation de la méthode str.replace
.
Notez enfin, qu'il est possible de changer le nombre d'espaces considérés par colonne en fixant le paramètre tabsize
.
>>> s = "James\tJason\tEthan" >>> s2 = s.expandtabs(10) >>> print(s, s2, sep='\n') James Jason Ethan James Jason Ethan >>>
Return a copy where all tab characters are expanded using spaces. If tabsize is not given, a tab size of 8 characters is assumed.
Paramètre | Description |
---|---|
self : str |
La chaîne de caractères courante. Rappel : self est implicitement passée lors de l'appel de la méthode. |
tabsize : int = 8 |
Le nombre de caractères devant être utilisé par colonne. |
La valeur de retour est de type str.
Elle correspond à une copie de la chaîne de caractères courante dans laquelle les tabulations sont remplacées par le nombre espaces adapté.
TypeError :Une exception de ce type sera déclenchée si le paramètre
tabsize
n'est pas du type attendu.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
#!/usr/bin/python3 # Une chaîne multi-lignes contenant un code Python avec des tabulations. python_code_sample = """counter = 10 while counter > 0: \tif counter != 5: \t\tprint(counter) \tcounter -= 1""" # On affiche le programme initial. print(python_code_sample) print("---------------------------------") # On reformate le code avec 4 blancs (comme les tabulations sont # systématiquement en tête, les méthodes expandtabs et replace # produiront le même résultat). final_code_sample = python_code_sample.expandtabs(4) # On affiche le code. print(final_code_sample) |
Et voici les résultats produits par cet exemple.
$> python3 sample.py counter = 10 while counter > 0: if counter != 5: print(counter) counter -= 1 --------------------------------- counter = 10 while counter > 0: if counter != 5: print(counter) counter -= 1 $>
Améliorations / Corrections
Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Emplacement :
Description des améliorations :