- 論壇徽章:
- 0
|
本帖最后由 wmjie 于 2011-03-09 17:14 編輯
看到有java 版的轉(zhuǎn)換,寫個 python 的 - #!/usr/bin/python
- #coding: utf-8
- def toBig(money=0,rmb=None):
- big = ['零', '壹', '貳', '叁', '肆', '伍', '陸', '柒', '捌', '玖']
- rmb = ['分', '角', '圓', '拾', '佰', '仟', '萬', '拾', '佰', '仟', '億', '拾', '佰', '仟', '萬','拾', '佰', '仟','萬','億']
- if rmb:
- rmb = rmb
-
- #轉(zhuǎn)成字符串
- str_money = str( int(money * 100) )[::-1]
- big_money = ''
-
- #拼大寫金額
- for i in xrange(len(str_money)):
- n = ord(str_money[i]) - ord('0')
- big_money = big[n] + rmb[i] + big_money
-
- #去掉零
- rule = ('零仟', '零',
- '零佰', '零',
- '零拾', '零',
- '零億', '億',
- '零萬', '萬',
- '零元', '元',
- '零角', '零',
- '零分', '零',
- '零零', '零',
- '零億', '億',
- '零零', '零',
- '零萬', '萬',
- '零零', '零',
- '零圓', '圓',
- '億萬', '億',
- '零, '',
- '圓$, '圓整')
-
- for i in xrange(0,len(rule),2):
- big_money = big_money.replace(rule[i], rule[i+1])
-
- return big_money
-
-
- if __name__ == '__main__':
- print toBig(1200003456.78)
復(fù)制代碼 |
|