我可以将一个句子分成单个单词,如下所示:
string = 'This is a string, with words!'
string.split(" ")
['This', 'is', 'a', 'string,', 'with', 'words!']
但我不知道如何将一个单词分成字母:
word = "word"
word.split("")
给我一个错误。理想情况下,我希望它返回 ['w','o','r','d'] 这就是拆分参数是“”的原因。
我可以将一个句子分成单个单词,如下所示:
string = 'This is a string, with words!'
string.split(" ")
['This', 'is', 'a', 'string,', 'with', 'words!']
但我不知道如何将一个单词分成字母:
word = "word"
word.split("")
给我一个错误。理想情况下,我希望它返回 ['w','o','r','d'] 这就是拆分参数是“”的原因。
>>> s = "foobar"
>>> list(s)
['f', 'o', 'o', 'b', 'a', 'r']
在 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']
list(word)
你可以把它传给list
>>> list('word')
['w', 'o', 'r', 'd']
在python中将其发送到
list(word)
您可以像这样遍历字符串中的每个字母:
>>> word = "word"
>>> for letter in word:
... print letter;
...
w
o
r
d
>>>