按字长过滤句子

时间:2014-02-07 03:09:35

标签: python

我必须从用户那里得到一个句子和一个整数,将该句子分成单词。然后计算每个单词中的字符。应该打印具有比用户输入的整数更多字符的每个单词。因此,如果用户输入句子"i love cats"和数字3。所有超过3个字符的单词(在这种情况下只是爱情)应该出现以及它包含的字符数量(在这种情况下为4)。问题是我不知道如何让程序计算每个特定单词中的字母。有没有办法可以将列表切割成子列表,然后计算每个子列表中的字符?

1 个答案:

答案 0 :(得分:3)

如果您可以隔离字符串中的单词,只需使用len即可获得字母数。
要隔离这些单词,可以使用.split()在空格上拆分字符串 除此之外,使用for循环遍历单词,或使用列表理解。

s = "i love cats"
n = 3
[(x, len(x)) for x in s.split() if len(x) > n]

打印

[('love', 4), ('cats', 4)]