2017-04-10 54 views
-1

我已經檢查了num2words庫,但我們希望達到單詞,所以我們可以打印在支票上。 ex。 23.25手段「二十三25美分」在num2words圖書館像對待「二十三點二五」Python庫相當於單詞檢查

回答

0

您可以隨時擴展現有的庫:)

from num2words import num2words 

def amt2words(amount, currency='dollars', change='cents', precision=2): 
    change_amt = (amount - int(amount))*pow(10, precision) 
    words = '{main_amt} {main_word}'.format(
     main_amt=num2words(int(amount)), 
     main_word=currency, 
    ) 
    if change_amt > 0: 
     words += ' and {change_amt} {change_word}'.format(
     change_amt=num2words(change_amt), 
     change_word=change, 
    ) 
    return words 

amt2words(23.25) 
# 'twenty-three dollars and twenty-five cents' 
amt2words(20) 
# 'twenty dollars' 
2

試試這個:

from num2words import num2words 

test = 23.25 

intpart,decimalpart = int(test), test-int(test) 
print(num2words(intpart).replace('-', ' ') + ' and ' + str(int(decimalpart * (10 ** (len(str(decimalpart)) - 2)))) + ' cent')