将单词转换为字符列表

时间:2013-03-14 19:33:39

标签: python

我可以将一个句子分成单个单词,如下:

string = 'This is a string, with words!'
string.split(" ")
['This', 'is', 'a', 'string,', 'with', 'words!']

但我不知道如何将一个单词分成字母:

word = "word"
word.split("")

给我一​​个错误。理想情况下,我希望它返回['w','o','r','d']这就是为什么split参数是“”。

5 个答案:

答案 0 :(得分:14)

>>> s = "foobar"
>>> list(s)
['f', 'o', 'o', 'b', 'a', 'r']

答案 1 :(得分:3)

在Python中,字符串是可迭代的。这意味着它支持特殊协议。

>>> s = '123'
>>> i = iter(s)
>>> i
<iterator object at 0x00E82C50>
>>> i.next()
'1'
>>> i.next()
'2'
>>> i.next()
'3'
>>> i.next()

Traceback (most recent call last):
  File "<pyshell#7>", line 1, in <module>
    i.next()
StopIteration

list构造函数可以构建任何可迭代的列表。它依赖于这种特殊方法next,并逐字逐字地获取,直到遇到StopIteration

因此,从字符串中生成字母列表的最简单方法是将其提供给list构造函数:

>>> list(s)
['1', '2', '3']

答案 2 :(得分:2)

在python中将其发送到

    list(word)

答案 3 :(得分:1)

list(word)

您可以将其传递给list

>>> list('word')
['w', 'o', 'r', 'd']

答案 4 :(得分:1)

您可以迭代字符串中的每个字母:

>>> word = "word"
>>> for letter in word:
...     print letter;
...
w
o
r
d
>>>