Есть ли в Python функция для разбиения слова на список? - PullRequest
87 голосов
/ 22 сентября 2008

Есть ли в python функция для разбиения слова на список из отдельных букв? например:

s="Word to Split"

чтобы получить

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

Ответы [ 5 ]

198 голосов
/ 22 сентября 2008
>>> list("Word to Split")
['W', 'o', 'r', 'd', ' ', 't', 'o', ' ', 'S', 'p', 'l', 'i', 't']
14 голосов
/ 22 сентября 2008

Самый простой способ, вероятно, просто использовать list(), но есть еще как минимум еще одна опция:

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

Они должны оба дать вам то, что вам нужно:

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

Как уже говорилось, первый, вероятно, наиболее предпочтителен для вашего примера, но есть варианты использования, которые могут сделать последний весьма удобным для более сложных вещей, например, если вы хотите применить к элементам какую-то произвольную функцию, например, с помощью :

[doSomethingWith(ch) for ch in s]
4 голосов
/ 22 сентября 2008

Нарушение правил, тот же результат: (х за х в «Слово для разделения»)

На самом деле итератор, а не список. Но, скорее всего, вам будет все равно.

3 голосов
/ 22 сентября 2008

Функция списка сделает это

>>> list('foo')
['f', 'o', 'o']
0 голосов
/ 11 марта 2019
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']
...