count: added v3 and v4 after reading about Trey's solution.
This commit is contained in:
parent
93a8cc169e
commit
9657a82d8d
|
|
@ -1,5 +1,5 @@
|
||||||
import re
|
import re
|
||||||
from collections import defaultdict
|
from collections import defaultdict, Counter
|
||||||
|
|
||||||
|
|
||||||
def count_words_v1(sentence):
|
def count_words_v1(sentence):
|
||||||
|
|
@ -17,4 +17,18 @@ def count_words_v2(sentence):
|
||||||
return count
|
return count
|
||||||
|
|
||||||
|
|
||||||
count_words = count_words_v2
|
def count_words_v3(sentence):
|
||||||
|
"""Augmented by trey's regex."""
|
||||||
|
regex = r"\b[\w'-]+\b"
|
||||||
|
count = defaultdict(int)
|
||||||
|
for word in re.findall(regex, sentence):
|
||||||
|
count[word.lower()] += 1
|
||||||
|
return count
|
||||||
|
|
||||||
|
|
||||||
|
def count_words_v4(sentence):
|
||||||
|
"""And the most compact yet pythonic solution."""
|
||||||
|
return Counter(re.findall(r"\b[\w'-]+\b", sentence.lower()))
|
||||||
|
|
||||||
|
|
||||||
|
count_words = count_words_v4
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue