NumWords module converts numbers from their numerical form to their international semantic form. Current input limit is 1066-1.
from numwords import NumWords
NumWords.convert(12345)
>>> "Twelve Thousand Three Hundred Fourty Five"
NumWords.convert(12345.6789)
>>> "Twelve Thousand Three Hundred Fourty Five Point Six Seven Eight Nine"
NumWords.convert("12345.6789")
>>> "Twelve Thousand Three Hundred Fourty Five Point Six Seven Eight Nine"
NumWords.convert(12345.0)
>>> "Twelve Thousand Three Hundred Fourty Five"