python数字转换为大写中文_阿拉伯数字金额转中文大写 (python实现)
分析
實(shí)現(xiàn)
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
def convert(n):
units = ['', '萬(wàn)', '億']
nums = ['零', '壹', '貳', '叁', '肆', '伍', '陸', '柒', '捌', '玖']
decimal_label = ['角', '分']
small_int_label = ['', '拾', '佰', '仟']
int_part, decimal_part = str(int(n)), str(n - int(n))[2:] # 分離整數(shù)和小數(shù)部分
res = []
if decimal_part:
res.append(''.join([nums[int(x)] + y for x, y in zip(decimal_part, decimal_label) if x != '0']))
if int_part != '0':
res.append('圓')
while int_part:
small_int_part, int_part = int_part[-4:], int_part[:-4]
tmp = ''.join([nums[int(x)] + (y if x != '0' else '') for x, y in zip(small_int_part[::-1], small_int_label)[::-1]])
tmp = tmp.rstrip('零').replace('零零零', '零').replace('零零', '零')
unit = units.pop(0)
if tmp:
tmp += unit
res.append(tmp)
return ''.join(res[::-1])
print convert(0.22)
print convert(0.20)
print convert(0.02)
print convert(1)
print convert(12)
print convert(123)
print convert(1234)
print convert(1230)
print convert(1204)
print convert(1034)
print convert(1004)
print convert(51234)
print convert(51204)
print convert(51034)
print convert(50234)
print convert(50034)
print convert(50004)
print convert(50000)
print convert(12351234)
print convert(12301234)
print convert(12351234)
print convert(12051234)
print convert(10351234)
print convert(10051234)
print convert(10001234)
print convert(10000000)
print convert(10000004)
print convert(10000030)
print convert(10000200)
print convert(10001000)
print convert(10050000)
print convert(12000010001)
print convert(1409.50)
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
輸出:
貳角貳分
貳角
貳分
壹圓
壹拾貳圓
壹佰貳拾叁圓
壹仟貳佰叁拾肆圓
壹仟貳佰叁拾圓
壹仟貳佰零肆圓
壹仟零叁拾肆圓
壹仟零肆圓
伍萬(wàn)壹仟貳佰叁拾肆圓
伍萬(wàn)壹仟貳佰零肆圓
伍萬(wàn)壹仟零叁拾肆圓
伍萬(wàn)零貳佰叁拾肆圓
伍萬(wàn)零叁拾肆圓
伍萬(wàn)零肆圓
伍萬(wàn)圓
壹仟貳佰叁拾伍萬(wàn)壹仟貳佰叁拾肆圓
壹仟貳佰叁拾萬(wàn)壹仟貳佰叁拾肆圓
壹仟貳佰叁拾伍萬(wàn)壹仟貳佰叁拾肆圓
壹仟貳佰零伍萬(wàn)壹仟貳佰叁拾肆圓
壹仟零叁拾伍萬(wàn)壹仟貳佰叁拾肆圓
壹仟零伍萬(wàn)壹仟貳佰叁拾肆圓
壹仟萬(wàn)壹仟貳佰叁拾肆圓
壹仟萬(wàn)圓
壹仟萬(wàn)零肆圓
壹仟萬(wàn)零叁拾圓
壹仟萬(wàn)零貳佰圓
壹仟萬(wàn)壹仟圓
壹仟零伍萬(wàn)圓
壹佰貳拾億零壹萬(wàn)零壹圓
壹仟肆佰零玖圓伍角
————————————————
版權(quán)聲明:本文為CSDN博主「mattkang」的原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/handsomekang/article/details/52563487
總結(jié)
以上是生活随笔為你收集整理的python数字转换为大写中文_阿拉伯数字金额转中文大写 (python实现)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 如何把阿拉伯数字转换为中文大写?
- 下一篇: python音频 降噪_python -