Pergunta

Existe uma função em python para dividir uma palavra em uma lista de letras simples? por exemplo:

s="Word to Split"

para obter

wordlist=['W','o','r','d','','t','o' ....]
Foi útil?

Solução

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

Outras dicas

A maneira mais fácil é provavelmente apenas para uso list(), mas há pelo menos uma outra opção também:

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

Devem ambos dar-lhe o que você precisa:

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

Como foi dito, o primeiro é provavelmente o mais preferível para o seu exemplo, mas existem casos de uso que podem tornar esta última bastante útil para coisas mais complexas, como se você deseja aplicar alguma função arbitrária para os itens, como com :

[doSomethingWith(ch) for ch in s]

Abuso das regras, mesmo resultado: (X para x em 'Palavra para dividir')

Na verdade um iterador, não uma lista. Mas é provável que você não vai realmente importa.

A função lista vai fazer isso

>>> list('foo')
['f', 'o', 'o']
text = "just trying out"

word_list = []

for i in range(0, len(text)):
    word_list.append(text[i])
    i+=1

print(word_list)

['j', 'u', 's', 't', ' ', 't', 'r', 'y', 'i', 'n', 'g', ' ', 'o', 'u', 't']
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top