Используя модуль наклона, как прокомментировал @ Lakshay Garg , вы можете сделать:
import datetime as dt, inflect
p = inflect.engine()
def date_in_words(x):
a = dt.datetime.strptime(x,'%Y-%m-%d')
return (a.strftime('%B ')+p.number_to_words(p.ordinal(int(a.day)))+', ' +
p.number_to_words(int(a.year)))
date_in_words('2018-03-14')
Out[259]: 'March fourteenth, two thousand and eighteen'