Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialAli Dahud
3,459 PointsI Don't know where to start this challenge :/
Alright, this one might be a bit challenging but you've been doing great so far, so I'm sure you can manage it.
I need you to make a function named word_count. It should accept a single argument which will be a string. The function needs to return a dictionary. The keys in the dictionary will be each of the words in the string, lowercased. The values will be how many times that particular word appears in the string.
Check the comments below for an example.
# 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.
2 Answers
Ali Dahud
3,459 PointsDear Chris Freeman would you be so kind and reply?
Chris Freeman
Treehouse Moderator 68,441 PointsHere is a basic flow:
# split incoming string into a list of words
# loop over list of words
# for each word
# if not seen add to dictionary with count 1
# if seen before, increase seen count
# return string
Post back if you need more help. Good luck!!!
Ali Dahud
3,459 Points# 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):
words=string.lower().split()
word_dict={}
for word in words:
count=1
if word in words:
count+=1
word_dict[word]
else:
count=1
return word_dict
its still not passing :(