我将如何将字符串中的每个单词拆分为单独的字符串?例如,如果我有此代码
s = "It sure is a nice day today"
l = list(s)
这将返回['I', 't', ' ', 's', 'u', 'r', 'e', ' ', 'i', 's', ' ', 'a', ' ', 'n', 'i', 'c', 'e', ' ', 'd', 'a', 'y', ' ', 't', 'o', 'd', 'a', 'y']
,我想让它返回单独的列表,如下所示:
['I', 't']
['s', 'u', 'r', 'e']
['i', 's']
['a']
['n', 'i', 'c', 'e']
['d', 'a', 'y']
['t', 'o', 'd', 'a', 'y']
如果可能的话,将它们存储在单独的列表中,而不是简单地打印它们。
答案 0 :(得分:14)
这看起来像是列表的列表,因为您需要一些数据结构来存储这些子列表。
例如:
s = "It sure is a nice day today"
result = [list(si) for si in s.split()]
然后生成:
>>> result = [list(si) for si in s.split()]
>>> result
[['I', 't'], ['s', 'u', 'r', 'e'], ['i', 's'], ['a'], ['n', 'i', 'c', 'e'], ['d', 'a', 'y'], ['t', 'o', 'd', 'a', 'y']]
当然,您也可以将这些子列表存储在元组等中。但是,您必须以某种方式将它们包装到可以存储列表的集合中。
答案 1 :(得分:4)
基于map
的版本,在其他方面无可挑剔的@WillemVanOnsem的答案:
list(map(list, s.split()))
#[['I', 't'], ['s', 'u', 'r', 'e'], ['i', 's'], ['a'], ['n', 'i', 'c', 'e'], ['d', 'a', 'y'], ['t', 'o', 'd', 'a', 'y']]
答案 2 :(得分:-1)
如果您尝试分割字符串,这是我通常的做法
var S= "my name is sam",
K= s.split (''),
FirstLetter= k [0];