Ce que %s signifie en Python - Secret révélé !

Quel Film Voir?
 
  Ce que %s signifie en Python - Secret révélé !

%s est un spécificateur d'argument et est utilisé pour le formatage de chaîne. Il emprunte sa syntaxe au langage C. En termes simples, il vous permet d'ajouter une valeur à l'intérieur d'une chaîne.





La valeur peut être une chaîne ou tout objet pouvant être converti en chaîne, par exemple un nombre, une liste, etc.



Toutes les valeurs de chaîne

Prenons l'exemple suivant.



name = input("Please insert your name: ")
song = input("What is your favorite song? " )
print("Hello %s! Would you like to listen to %s?" %(name, song))

Dans l'exemple ci-dessus, nous prenons le nom et la chanson préférée de l'utilisateur et affichons un message en utilisant ces valeurs.



De plus, nous posons %s comme espace réservé aux endroits où vous voulez des valeurs de variables.

Un tuple contenant des valeurs suit la chaîne de format, c'est-à-dire, %(nom, chanson) . N'oubliez pas d'insérer les valeurs dans le même ordre que vous souhaitez les afficher. Dans ce cas, le Nom viendra en premier, puis le chanson .

Un exemple de sortie de l'exemple ci-dessus est donné ci-dessous.

Please insert your name: ashton
What is your favorite song? Perfect
Hello ashton! Would you like to listen to Perfect?

Comme vous pouvez le voir, cela fonctionne comme prévu.

Une seule valeur

Si nous n'avons qu'un seul %s , alors nous pouvons écrire une valeur sans tuple. Voyons voir.

name = input("Please insert your name: ")
print("Hello %s!" % name)

Production

Please insert your name: Agar
Hello Agar!

Objets avec une représentation sous forme de chaîne

Comme déjà mentionné, une valeur peut être n'importe quel objet pouvant être converti en chaîne. Prenons un exemple.

ramon tulfo enquêteur quotidien philippin

name = "Smith"
score = [70, 80, 90, 100]
print("The score of %s in the last four matches: %s" % (name, score))

Production

The score of Smith in the last four matches: [70, 80, 90, 100]

Comme vous pouvez le constater, nous plaçons une chaîne et une liste en utilisant le %s spécificateur d'argument. Il convertit automatiquement la liste en chaîne.

Prenons le même exemple et faisons-le en utilisant l'opérateur de concaténation.

name = "Smith"
score = [70, 80, 90, 100]
print("The score of " + name + " in the last four matches " + str(score))

Production

The score of Smith in the last four matches [70, 80, 90, 100]

Ici, contrairement à %s, nous convertissons explicitement la liste en chaîne et utilisons + à chaque endroit où nous voulons ajouter une valeur.

Erreur-type

De plus, le nombre de spécificateurs d'argument doit être le même que le nombre de valeurs dans le tuple. S'ils ne le sont pas, vous obtiendrez une erreur. Voyons voir.

name = input("Please insert your name: ")
song = input("What is your favorite song? " )
print("Hello %s! Would you like to listen to %s?" %(name))

Production

  Que signifie %s en Python

Que signifie %s en Python

Comme vous pouvez le voir dans la sortie ci-dessus, le programme lance un Erreur-type .

Clé de mappage

Au lieu de mémoriser l'ordre dans lequel vous souhaitez insérer les valeurs, vous pouvez passer un clé de mappage à %s . Considérez l'exemple suivant pour comprendre ce concept.

name = "Ashton Agar"
age  = 20
print("My name is %(name)s and my age is %(age)s." %{"age":age, "name":name})

Production

My name is Ashton Agar and my age is 20.

Dans l'exemple ci-dessus, nous passons un dictionnaire contenant des paires (clé, valeur) au lieu d'un tuple. De plus, la clé est placée entre les % et s , qui est remplacé par sa valeur plus tard. Par conséquent, nous n'avons pas besoin de nous souvenir de la commande.

%s est une ancienne méthode de formatage des chaînes. De meilleures techniques telles que format() et cordes f ont été introduits qui sont plus faciles à utiliser et offrent plus de fonctionnalités.