2014-11-04 3 views
-3
print 'The average amount of words in the sentence is' ,average, 'words' 

Я просто не могу получить эту работуСреднее количество слов в предложении?

+2

Во-первых, у вас есть слово 'for word in words:' loop, но вы ничего не делаете с 'word'. Почему вы вызываете 'len (words)' вместо, скажем, вызов 'len (word)'? – abarnert

+1

Во-вторых, чтобы усреднить все, вы должны добавить их. Вы можете сохранить текущую сумму по ходу дела, или вы можете вставить их в список и называть его «sum» на нем позже, или что-нибудь еще, о чем вы можете подумать, но вы должны сделать _something_. – abarnert

+1

Тогда, как только у вас есть это общее количество, вам просто нужно разделить его на количество слов, и у вас есть среднее значение. Вы должны уметь выяснить, как это сделать, если у вас есть общая работа. – abarnert

ответ

0

Вы должны суммировать отдельные символы и DIVID по количеству слов в вашем списке.

Слова расщепляются пространством (но вы должны думать о разных сценариях). nbrChar - переменная, которая используется для подсчета символов во всех словах.

from __future__ import division 
sentence = raw_input ("Please write a sentence for it to be counted and averaged:") 

words = sentence.split(" ") #You should split words by space 

nbrChar, average=0, .0 

for word in words: 
    nbrChar+= len(word) 

average= nbrChar // len(words) 

print 'The average amount of words in the sentence is' ,average, 'words' 
Смежные вопросы