在Python中查找列表中所有单词的字符数


问题内容

我正在尝试在单词列表(特别是此列表)中找到字符总数:

words = ["alpha","omega","up","down","over","under","purple","red","blue","green"]

我试着做:

print "The size of the words in words[] is %d." % len(words)

但这只是告诉我列表中有10个单词。

任何帮助,将不胜感激!

抱歉,我想提到的是我正在为此做的类是关于for循环的,所以我想知道是否必须实现forloop才能给我答案,这就是为什么存在for循环标记的原因。


问题答案:

您可以len在列表推导中使用该函数,这将创建一个长度列表

>>> words = ["alpha","omega","up","down","over","under","purple","red","blue","green"]
>>> [len(i) for i in words]
[5, 5, 2, 4, 4, 5, 6, 3, 4, 5]

然后只需sum使用生成器表达式

>>> sum(len(i) for i in words)
43

如果您真的有心动的话for

total = 0
for word in words:
    total += len(word)

>>> print total
43