118 votes

Existe-t-il une fonction en python permettant de scinder un mot en une liste?

Existe-t-il une fonction en python permettant de scinder un mot en une liste de lettres simples? par exemple:

 s="Word to Split"
 

obtenir

 wordlist=['W','o','r','d','','t','o' ....]
 

260voto

Greg Hewgill Points 356191
>>> list("Word to Split")
['W', 'o', 'r', 'd', ' ', 't', 'o', ' ', 'S', 'p', 'l', 'i', 't']

28voto

paxdiablo Points 341644

Le plus simple est probablement d'utiliser list(), mais il y a au moins une autre option:

s = "Word to Split"
wordlist = list(s)               # option 1, 
wordlist = [ch for ch in s]      # option 2, list comprehension.

Ils doivent à la fois vous donner ce dont vous avez besoin:

['W','o','r','d',' ','t','o',' ','S','p','l','i','t']

Comme indiqué, le premier est probablement le plus préférable pour votre exemple, mais il y a des cas d'utilisation qui peut en faire assez pratique pour des trucs plus complexe, comme si vous voulez appliquer une fonction arbitraire des éléments, tels que:

[doSomethingWith(ch) for ch in s]

11voto

Mez Points 9744

La fonction de liste fera ceci

 >>> list('foo')
['f', 'o', 'o']
 

4voto

Tim Ottinger Points 824

Abus des règles, même résultat: (x pour x dans 'Word to split')

En réalité, un itérateur, pas une liste. Mais il est probable que vous ne vous en souciez pas vraiment.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X