Maison  >  Article  >  développement back-end  >  Formatage de chaîne % vs format, quel est le meilleur ?

Formatage de chaîne % vs format, quel est le meilleur ?

anonymity
anonymityoriginal
2019-05-25 11:28:362398parcourir

Il existe deux façons de formater des chaînes en Python : la méthode du signe de pourcentage et la méthode de formatage.

La méthode du signe de pourcentage est relativement ancienne, tandis que la méthode de formatage est une méthode plus avancée et est destinée à remplacer l'ancienne méthode. , actuellement les deux coexistent.

Formatage de chaîne % vs format, quel est le meilleur ?

Mode pourcentage

%[(name)][flags][width].[precision]typecode

(name) Facultatif, utilisé pour sélectionner la clé spécifiée

flags Facultatif, les valeurs disponibles sont :

+ Alignés à droite ; les nombres positifs sont précédés d'un nombre positif, les nombres négatifs sont précédés d'un signe moins

- Les nombres positifs justifiés à gauche ne sont pas signés ; , nombres négatifs Ajoutez un signe négatif avant ;

espace Aligné à droite ; ajoutez un espace avant les nombres positifs, ajoutez un signe moins avant les nombres négatifs ;

0 Aligné à droite ; nombres, ajoutez un signe moins avant les nombres négatifs ; utilisez 0 pour remplir l'espace vide

width Facultatif, occupant la largeur

.precision Facultatif, le nombre de chiffres restant après la virgule décimale

typecode Requis

s, récupère la valeur de retour de la méthode __str__ de l'objet entrant et formate-la à l'emplacement spécifié

r, récupère la valeur de retour de la méthode __repr__ de l'objet entrant objet et formatez-le à l'emplacement spécifié

c, entier : convertissez le nombre en sa valeur unicode correspondante, la plage décimale est 0 639a44ff53d0715ab8e01b99270cc61e, le contenu est aligné à droite (par défaut)

=, le contenu est aligné à droite, le symbole est placé à gauche du caractère de remplissage, et uniquement pour les types numériques sont valides. Même si : symbole + remplissage + chiffre

^, le contenu est centré

signe [Facultatif] Il y a des nombres non signés

+, signe positif plus positif, signe négatif plus négatif ;

-, le signe positif reste inchangé, le signe négatif s'ajoute au négatif

espace, le signe positif est un espace, le signe négatif s'ajoute au négatif ;

#                          Octobre et seize -in -proof.

Largeur> width [Facultatif] La largeur des bits de formatage

.precision [Facultatif] Précision de rétention des chiffres décimaux

type [Facultatif] Type de formatage

Saisir "caractère Paramètres du type de chaîne "

s, les données de type chaîne formatées

sont vides, si le type n'est pas spécifié, la valeur par défaut est Aucun, identique à s

passé en "type entier" Le paramètre

b, convertit automatiquement l'entier décimal en représentation binaire puis formate

c, convertit automatiquement l'entier décimal en son caractère Unicode correspondant

d, entier décimal

o, convertit automatiquement l'entier décimal en représentation octale puis le formate

x, convertit automatiquement l'entier décimal en représentation hexadécimale Puis formatez (x minuscule)

X, convertit automatiquement l'entier décimal en représentation hexadécimale puis formate (majuscule Le paramètre de

e, est converti en notation scientifique (e minuscule), puis formaté ;

E, est converti en notation scientifique (E majuscule), puis formaté

f, converti en type à virgule flottante (6 chiffres par défaut après la virgule décimale), puis formaté ; F, converti en virgule flottante (6 chiffres par défaut après la virgule), puis formaté

g, bascule automatiquement entre e et f

G, bascule automatiquement entre E et F

%, affichage du pourcentage (l'affichage par défaut est de 6 chiffres après la virgule décimale)

tpl = "i am {}, age {}, {}".format("seven", 18, 'alex')
tpl = "i am {}, age {}, {}".format(*["seven", 18, 'alex'])
tpl = "i am {0}, age {1}, really {0}".format("seven", 18)
tpl = "i am {0}, age {1}, really {0}".format(*["seven", 18])
tpl = "i am {name}, age {age}, really {name}".format(name="seven", age=18)
tpl = "i am {name}, age {age}, really {name}".format(**{"name": "seven", "age": 18})
tpl = "i am {0[0]}, age {0[1]}, really {0[2]}".format([1, 2, 3], [11, 22, 33])
tpl = "i am {:s}, age {:d}, money {:f}".format("seven", 18, 88888.1)
tpl = "i am {:s}, age {:d}".format(*["seven", 18])
tpl = "i am {name:s}, age {age:d}".format(name="seven", age=18)
tpl = "i am {name:s}, age {age:d}".format(**{"name": "seven", "age": 18})
tpl = "numbers: {:b},{:o},{:d},{:x},{:X}, {:%}".format(15, 15, 15, 15, 15, 15.87623, 2)
tpl = "numbers: {:b},{:o},{:d},{:x},{:X}, {:%}".format(15, 15, 15, 15, 15, 15.87623, 2)
tpl = "numbers: {0:b},{0:o},{0:d},{0:x},{0:X}, {0:%}".format(15)
tpl = "numbers: {num:b},{num:o},{num:d},{num:x},{num:X}, {num:%}".format(num=15)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn