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 trialBob Fitzgerald
87 Pointsnot accepting a working answer
I'm using the collections to count the words, in the workspace it works perfectly fine
# 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.
import collections
string = 'The black cat layed down in the black night'
def word_count(string):
thestring = string.lower()
thelist = thestring.split(' ')
d = collections.defaultdict(int)
for c in thelist:
d[c] += 1
return (d)
word_count(string)
1 Answer
Jennifer Nordell
Treehouse TeacherHi there! You are super close and It does work partially. Take a closer look at the Bummer! message.
Bummer! Hmm, didn't get the expected output. Be sure you're lowercasing the string and splitting on all whitespace!
My guess is that you've tried strings with spaces, but no strings with tabs or new line characters. The challenge asks you to split on all whitespace, not just spaces. Your code is currently only splitting on spaces as indicated by the split(' ')
. To make Python split on all whitespace use split without any arguments: split()
.
If I remove the arguments from your split()
, it passes the challenge with flying colors!
Bob Fitzgerald
87 PointsBob Fitzgerald
87 Pointsah! thank you very much!