>> Technologie Électronique >  >> Maison intelligente >> Vie connectée

Comment convertir en chaîne de caractères (string) en Python

Contrairement à C++ et Java, les variables Python ne contiennent pas d'information de type explicite. Si une fonction attend une chaîne, vous pouvez y passer d'autres types sans exception immédiate, mais le traitement peut échouer plus tard. Seules les structures de données composées (ensembles, listes) peuvent nécessiter une conversion explicite. Python fournit des fonctions et opérateurs pratiques pour itérer sur une structure et ajouter des caractères à une variable chaîne.

Langages à typage dynamique fort

C++ et Java exigent un mot-clé de type avant toute allocation (compilateur/exécution doit savoir comment traiter la donnée). Ces langages à typage statique utilisent le transtypage (cast) pour convertir entre types. Python, à typage dynamique, infère le type à l'exécution : assignez simplement les valeurs aux variables. Vous pouvez réassigner n'importe quel type à une variable utilisée différemment ; le ramasse-miettes Python supprime l'ancienne variable.

Convertir des structures de données en chaînes

Si votre programme collecte du texte dans une structure composée (liste, tuple, ensemble), bouclez sur la structure pour ajouter les éléments à une variable chaîne. Déclarer la chaîne avant la boucle simplifie le code. Exemple basique de conversion liste → chaîne :

ultimateQuestion = "" # chaîne vide
tokens = ["What's ", 6, " times ", 9, "?"] # liste types mixtes avec espaces
for t in tokens: ultimateQuestion += str(t)
print(ultimateQuestion)

La méthode str() dans la boucle convertit les entiers en chaînes, sans effet sur les chaînes existantes. Résultat : « What's 6 times 9? »

Méthodes de chaîne intégrées

Comme la plupart des langages haut niveau, Python inclut de nombreuses méthodes sur le type str natif. On peut les appeler depuis un littéral chaîne. Pour concaténer des éléments de liste, passez la liste à la méthode join d'un littéral chaîne :

tokens = ['Hello', 'World'] # jetons sans espaces
pyString = ' '.join(tokens)
print(pyString)

Ce script appelle join sur le littéral `' '` (espace unique). Concatène 'Hello' et 'World' en « Hello World » en insérant l'objet appelant (espace) entre chaque élément.

Résolution de portée des variables Python

Comme dans d'autres langages, attention à la portée lors de la déclaration/assignation de variables chaîne. Une variable déclarée dans une fonction/boucle n'est pas utilisable ailleurs. Exemple : l'interpréteur détruit « verticalList » après la boucle :

for g in groceries: verticalList += g + '\n' # chaîne déclarée dans boucle
print(verticalList)

Ce script lève une exception car « verticalList » n'est pas définie hors de la portée de la boucle.

Vie connectée