web-dev-qa-db-fra.com

Chaîne à lister dans Python

J'essaie de diviser une chaîne:

'QH QD JC KD JS'

dans une liste comme:

['QH', 'QD', 'JC', 'KD', 'JS']

Comment pourrais-je procéder?

30
Nicole
>>> 'QH QD JC KD JS'.split()
['QH', 'QD', 'JC', 'KD', 'JS']

split :

Renvoie une liste des mots de la chaîne, en utilisant sep comme chaîne de délimitation. Si maxsplit est donné, au plus maxsplit les divisions sont effectuées (ainsi, la liste aura au plus maxsplit+1 Éléments). Si maxsplit n'est pas spécifié, il n'y a pas de limite au nombre de divisions (toutes les divisions possibles sont effectuées).

Si sep est donné, les délimiteurs consécutifs ne sont pas regroupés et sont réputés délimiter des chaînes vides (par exemple, '1,,2'.split(',') renvoie ['1', '', '2']). L'argument sep peut être composé de plusieurs caractères (par exemple, '1<>2<>3'.split('<>') renvoie ['1', '2', '3']). Le fractionnement d'une chaîne vide avec un séparateur spécifié renvoie [''].

Si sep n'est pas spécifié ou est None, un algorithme de fractionnement différent est appliqué: les exécutions d'espaces consécutifs sont considérées comme un seul séparateur, et le résultat ne contiendra aucune chaîne vide au début ou à la fin si la chaîne a un espace de début ou de fin. Par conséquent, le fractionnement d'une chaîne vide ou d'une chaîne constituée uniquement d'espaces avec un séparateur None renvoie [].

Par exemple, ' 1 2 3 '.split() renvoie ['1', '2', '3'] Et ' 1 2 3 '.split(None, 1) renvoie ['1', '2 3 '].

54
Katriel

Ici les simples

a = [x for x in 'abcdefgh'] #['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
16
Ojitha

Peut-être comme ça:

list('abcdefgh') # ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
2
Aldrich Dienhart

Vous pouvez utiliser la fonction split (), qui renvoie une liste, pour les séparer.

letters = 'QH QD JC KD JS'

letters_list = letters.split()

L'impression de la liste des lettres le formaterait maintenant comme ceci:

['QH', 'QD', 'JC', 'KD', 'JS']

Vous avez maintenant une liste avec laquelle vous pouvez travailler, comme vous le feriez avec n'importe quelle autre liste. Par exemple, accéder à des éléments basés sur des index:

print(letters_list[2])

Cela imprimerait le troisième élément de votre liste, qui est "JC"

0
seb_rc