数字转中文大写
def digital_to_chinese(digital): str_digital = str(digital) chinese = {'1': '壹', '2': '贰', '3': '叁', '4': '肆', '5': '伍', '6': '陆', '7': '柒', '8': '捌', '9': '玖', '0': '零'} chinese2 = ['拾', '佰', '仟', '万', '厘', '分', '角'] jiao = '' bs = str_digital.split('.') yuan = bs[0] if len(bs) > 1: jiao = bs[1] r_yuan = [i for i in reversed(yuan)] count = 0 for i in range(len(yuan)): if i == 0: r_yuan[i] += '圆' continue r_yuan[i] += chinese2[count] count += 1 if count == 4: count = 0 chinese2[3] = '亿' s_jiao = [i for i in jiao][:3] # 去掉小于厘之后的 j_count = -1 for i in range(len(s_jiao)): s_jiao[i] += chinese2[j_count] j_count -= 1 last = [i for i in reversed(r_yuan)] + s_jiao last_str = ''.join(last) print(f'{float(str_digital):,.3f}') print(last_str) last_str = last_str.replace('0百', '0').replace('0十', '0').replace('000', '0').replace('00', '0').replace('0圆', '圆') for i in range(len(last_str)): digital = last_str[i] if digital in chinese: last_str = last_str.replace(digital, chinese[digital]) print(last_str) return last_str if __name__ == '__main__': digital_to_chinese(123000789.456)
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战