019f8fd211
git-subtree-dir: users/wpcarro git-subtree-mainline:464bbcb15c
git-subtree-split:24f5a642af
Change-Id: I6105b3762b79126b3488359c95978cadb3efa789
32 lines
793 B
Python
32 lines
793 B
Python
def normalize(x):
|
|
noise = ".,;-"
|
|
for y in noise:
|
|
if x.endswith(y):
|
|
return normalize(x[0:-1])
|
|
if x.startswith(y):
|
|
return normalize(x[1:])
|
|
return x.lower()
|
|
|
|
def word_cloud(xs):
|
|
result = dict()
|
|
|
|
for x in xs.split(' '):
|
|
k = normalize(x)
|
|
if k in result:
|
|
result[k] += 1
|
|
else:
|
|
result[k] = 1
|
|
|
|
return result
|
|
|
|
result = word_cloud("This is just the beginning. The UK will lockdown again.")
|
|
assert result.get('this') == 1
|
|
assert result.get('is') == 1
|
|
assert result.get('just') == 1
|
|
assert result.get('the') == 2
|
|
assert result.get('beginning') == 1
|
|
assert result.get('uk') == 1
|
|
assert result.get('will') == 1
|
|
assert result.get('lockdown') == 1
|
|
assert result.get('again') == 1
|
|
print("Success!")
|