2016-02-10 2 views
-2

Я делаю программу, которая находит каждое слово в блоке текста и выводит каждое слово и сколько раз слово использовалось.Python, как вы проверяете, сколько раз элемент появляется в массиве

Мой текущий код здесь:

text = input("Please enter some text ") 
terminator = len(text) 
    n = 0 
    word = "" 
    wordlist = [] 
    while len(text) > 0: 
     if word != "": 
      wordlist.append(word) 
     text = text[n:] 
     word = "" 
     n = 0 
     for char in text: 
      if char != " ": 
       word = word + char 
       n = n + 1 
      else: 
       text = text[1:] 
       break 
    for item in wordlist: 
     print(item) 

спасибо :)

+7

Кажется, это работа для 'collections.Counter'. , , – mgilson

ответ

2

я сделать что-то вроде этого:

import re 
from collections import Counter 

text = input("Please enter some text ") 
text = re.sub(' +', ' ', text) 
text = text.split(' ') 
counter = Counter(text) 

линии text = re.sub(' +', ' ', text) сделки со случаями, когда пользователь вводит множественным последовательные пробелы.

Смежные вопросы