我有一个列表,其结构如下:
['Blah blah blah', 'blah blah blah', 'blah', 'blah blah']
(用户输入构成列表的输入,但我已经编写了代码) 我需要编写一个代码,告诉用户列表中有多少单词。在那个特定的列表中,有9个单词,我尝试了很多方法,但我似乎无法编写正确的代码。请帮助,谢谢。
答案 0 :(得分:4)
假设单词总是由单个空格分隔,您可以使用以下代码:
>>> words = ['Blah blah blah', 'blah blah blah', 'blah', 'blah blah']
>>>
>>> sum(len(line.split()) for line in words)
9
答案 1 :(得分:0)
sum(len(x) for x in [w.split() for w in ['Blah blah blah', 'blah blah blah', 'blah', 'blah blah']])
=> 9
或更短,正如Eric所说:
sum(len(x.split()) for x in ['Blah blah blah', 'blah blah blah', 'blah', 'blah blah'])
答案 2 :(得分:0)
这应该有效:
thelist = ['Blah blah blah', 'blah blah blah', 'blah', 'blah blah']
wc = 0
for item in thelist:
words = item.split()
wc = wc + len(words)
print 'word count is %d.' % (wc)