In [1]:
import numpy as np
ones = ['','one','two','three','four','five','six','seven','eight','nine','ten']
teens = ['ten','eleven','twelve','thirteen','fourteen','fifteen','sixteen','seventeen','eighteen','nineteen']
tens = ['','','twenty', 'thirty','forty','fifty','sixty','seventy','eighty','ninety']
def to_english(N):
word = ''
if len(str(N)) == 3:
word += ones[int(str(N)[0])] + 'hundred'
if N%100 != 0:
word += 'and'
tens_place = N%100
if tens_place > 19:
word += tens[int(str(tens_place)[0])] + ones[int(str(tens_place)[1])]
elif 10 <= N%100 <= 19:
word += teens[int(str(tens_place)[1])]
else:
word += ones[int(str(tens_place)[0])]
if N == 1000:
word = 'onethousand'
return word
sum([len(to_english(i)) for i in range(1,1001)])
Out[1]:
In [1]:
In [ ]: