Les données:Comment puis-je concaténer de manière optimale une liste de caractères à une chaîne?
list = ['a','b','x','d','s']
Je veux créer une chaîne str = "abxds". Comment puis je faire ça?
En ce moment je suis en train de faire quelque chose comme:
str = ""
for i in list:
str = str + i
print(str)
Je sais que les chaînes sont immuables en Python et cela va créer 7 objet chaîne. Et cela sort de ma mémoire quand je le fais des milliers de fois.
Existe-t-il un moyen plus efficace de le faire?
Vous devriez éviter d'utiliser « la liste » comme le nom de votre liste comme liste est intégré (et même pour "str") – Noah
Les objets 'str' sont _immutable_ en Python, c'est pourquoi il crée un nouvel objet' str' pour chaque opération de concaténation. –
je suis désolé, la faute de frappe, les chaînes sont immuables – rda3mon