2014-02-07 43 views
0

我必須從用戶和一個整數中得到一個句子,將該句子分成單詞。然後統計每個單詞中的字符。應該打印每個字符比用戶輸入的整數更多的字符。所以如果用戶輸入句子"i love cats"和號碼3。所有超過3個字符(在這種情況下只是愛)的單詞應該顯示爲它包含的字符數量(在本例中爲4)。問題是我不知道如何讓程序計算每個特定單詞中的字母。有沒有一種方法可以將列表分割成子列表,然後統計每個子列表中的字符?按字長過濾句子

+0

是 「貓」 不超過三個字符...? – mhlester

回答

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)]