python简单将账本金额(阿拉伯数字)转为大写中文数字金额
缘由
实习的地方要求将账本金额转换为中文大写,我又不想一个个手打,网上能直接找到的也只支持整数转换,就根据自己的需要写了一小段,置此以作记录
解决的问题
- 考虑了多个0在中间、末尾、开头不同位置
- 考虑了小数点后两位的情况
- 自动添加单位
这样其实用来转换一下账本的金额怎么也够用了。。
def get_sdigit(num, p):
return int(num / pow(10, p)) % 10
def get_max_pos(number):
return len(str(int(number))) + len(str(int(number))) % 4 + 1
class CNumber:
cdict = {
}
gdict = {
}
xdict = {
}
def __init__(self):
self.cdict = {
0: u'', 1: u'拾', 2: u'佰', 3: u'仟'}
self.xdict = {
0: '分', 1: '角', 2: u'元', 3: u'万', 4: u'亿', 5: u'兆'}<