Есть ли функция в python для разбиения слова на список отдельных букв? например:
s="Word to Split"
чтобы получить
wordlist=['W','o','r','d','','t','o' ....]
Есть ли функция в python для разбиения слова на список отдельных букв? например:
s="Word to Split"
чтобы получить
wordlist=['W','o','r','d','','t','o' ....]
>>> list("Word to Split")
['W', 'o', 'r', 'd', ' ', 't', 'o', ' ', 'S', 'p', 'l', 'i', 't']
Самый простой способ - это просто использовать 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]
Нарушение правил, тот же результат: (x для x в "Word для разделения" )
На самом деле это итератор, а не список. Но, скорее всего, вам все равно.
Функция list сделает это
>>> list('foo')
['f', 'o', 'o']
Вот просто однострочное решение
>>> mystring = "This is my string"
>>> list(mystring)
['T', 'h', 'i', 's', ' ', 'i', 's', ' ', 'm', 'y', ' ', 's', 't', 'r', 'i', 'n', 'g']
Вы можете видеть, что даже белые пробелы также преобразуются в элемент в списке
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']
Преобразовать строку в список:
myword = 'code to split given string'
list(myword)