The question as below: Create a dictionary called char_d from the string stri, so that the key is a character and the value is how many times it occurs.
this is the code i tried:
stri = "what can I do"
char_d={}
lst=stri.split()
for wrd in lst:
for c in wrd:
if c not in char_d:
char_d[c]=0
char_d[c]+=1
the output i get is:
[('h', 1), ('o', 1), ('c', 1), ('t', 1), ('n', 1), ('d', 1), ('I', 1), ('a', 2), ('w', 1)]
the expected value should include: (' ',3)
i think the value should be including the space but how we do it?
What you proposed works. You can use
get
method of dictionary to be more pythonic.get(c, 0)
will return 0 if c does not exist in the dict.You can also use Counter from collections.