8
votes

Python - Concaténate une chaîne à elle-même, plusieurs fois

Je veux rejoindre des cordes my_string = "Je suis bon." de telle sorte qu'il devrait imprimer le même my_string 3 fois, comme dans my_string * 3 avec un espace entre chaque phrase complète. Comment fait-on ça? quelque chose comme str.join ('', my_string * 3) ?

Je connais cela une question fondamentale, mais je veux le savoir.

Merci d'avance, SAMMED


0 commentaires

5 Réponses :


2
votes

Cela devrait fonctionner:

" ".join((my_string,) * 3)


1 commentaires

En fait, je pense que vous voulez quelque chose comme "" .join ((my_string,) * 3)



21
votes

Vous êtes assez proche. Essayez ceci: xxx

vous avez besoin [my_string] * 3 au lieu de my_string * 3 parce que vous voulez une liste contenant la chaîne trois fois (qui peut ensuite être joint) au lieu d'avoir une seule grosse chaîne contenant le message trois fois.

aussi, "" ".join (a) est sténographique pour STR .join ("", a) .


0 commentaires

2
votes

"" .join ([my_string pour i dans la plage (3)]


0 commentaires

0
votes

ou vous pouvez simplement profiter du fait que multiplier une chaîne concaténe des copies de celui-ci: ajoutez un espace à la fin de votre chaîne et multipliez sans utiliser joindre . xxx


1 commentaires

Nice, mais cette chaîne a un espace supplémentaire.



1
votes

J'ai rencontré des contrôles de performance, pour voir comment des méthodes différentes sont concurrentielles les unes avec les autres.

For loop: 5.720043182373047
List join: 0.8931441307067871
String multiplication: 0.025591611862182617


0 commentaires