Python Python Collections (2016, retired 2019) Dictionaries Word Count

Antoni Majewski
Antoni Majewski
3,128 Points

word_count - my solution isn't working and I don't understand why :(


my code isn't working and I don't understand why - it's supposed to make a list out of string and late pop word out of list and count it to later wrap it up in dictionary - is my way of thinking bad? What's wrong?

# E.g. word_count("I do not like it Sam I Am") gets back a dictionary like:
# {'i': 2, 'do': 1, 'it': 1, 'sam': 1, 'like': 1, 'not': 1, 'am': 1}
# Lowercase the string to make it easier.

def word_count(string):
    string = list(string.lower())
    sting = string [:]
    word_amount = 1
    for word in sting:
        while word in sting:
            word_amount += 1
        dict = (**kwarg{"word": "word_amount"})


1 Answer

Steven Parker
Steven Parker
203,727 Points

Here's a few hints:

  • converting a string into a list breaks it up into single characters (not words)
  • you have not defined anything named "kwarg" (and it's not a function)
  • you'd want to build up the dictionary instead of replacing it each time
  • you can do this with just one loop (and no nesting)