python数字金额转换为中文大写金额
python数字金额转换为中文大写金额
编写一函数,将数字金额转换为中文大写金额。设最高位考虑到亿,最低位考虑到分(如:数字金额为1023.445,转换为中文大写金额为:壹仟零佰贰拾叁元肆角伍分)。输入:一个数字金额(如:1234.5),输出:中文大写金额(壹仟贰佰叁拾肆元伍角零分)。
from decimal import Decimaldef num2money_format(change_number):""".转换数字为大写货币格式( format_word.__len__() - 3 + 2位小数 )change_number 支持 float, int, long, string"""format_word = ["元","拾", "佰", "仟", "万","拾", "佰", "仟", "亿","拾", "佰", "仟", "万","拾", "佰", "仟"]format_word_decimal = ['分', '角']format_num = {'0': "零", '1': "壹", '2': "贰", '3': "叁", '4': "肆", '5': "伍", '6': "陆", '7': "柒", '8': "捌", '9': "玖"}res = [] # 存放转换结果if '.' not in change_number:# 输入的数字没有'.',为整元,没有角和分k = len(change_number) - 1for i in change_number:res.append(format_num[i])res.append(format_word[k])k = k - 1elif '.' in change_number:float_2_change_num = Decimal(float(change_number)).quantize(Decimal("0.00"))# 如果输入的字符串有“.”,则将其转换为浮点数后,四舍五入取两位小数# print(float_2_change_num)# print(type(float_2_change_num))depart = str(float_2_change_num).split('.')# 将四舍五入得到的浮点数整数部分和小数部分拆开,实现操作为:先将浮点数转为字符串类型,再以“.”为分隔符分开# print(depart)int_part = depart[0] # 整数部分# print(int_part)decimal_part = depart[1] # 小数部分# print(decimal_part)k = len(int_part) - 1for i in int_part: # 整数部分转换res.append(format_num[i])res.append(format_word[k])k = k - 1m = len(decimal_part) - 1for i in decimal_part: # 小数部分转换res.append(format_num[i])res.append(format_word_decimal[m])m = m - 1return ''.join(res) # 返回结果your_money = input()
result = num2money_format(your_money)
print(result)
python数字金额转换为中文大写金额相关推荐
- python数字金额转换为中文大写金额(角、分)
初学python,有错望大佬改正,谢谢 编写程序,根据用户输入的金额数字转换成相应的中文大写数字.例如,1002.34转换为"壹仟零贰圆叁角肆分",100转换为"壹佰圆整 ...
- 将数字金额转换为中文大写金额
/*------Oracle数据库------*/ 在存储过程中,将数据中的金额小写转大写的函数. create or re ...
- java将输入的数字金额转换为中文大写金额
前言 将输入的数字字符串中的每一个数字字符转换为对应的中文大写,例如12345转换为壹贰叁肆伍,再将此中文大写和对应的单位进行字符串的拼接并一起输出 输出结果为:零佰零拾壹万贰仟叁佰肆拾伍元 一.具体 ...
- 将数字金额转换为中文大写金额(在网上找的)
/*------Oracle数据库------*/ 在存储过程中,将数据中的金额小写转大写的函数. create or re ...
- java实现数字金额转换中文大写金额
直接贴代码吧! public class CnNumberUtils {private final static Logger logger = LoggerFactory.getLogger(CnN ...
- Java 描述将数字金额转换为中文大写
Java 描述金额转换(数字转换成中文大写) 解题思路:把每一位转换成对应的大写,然后在不足地方补零,最后加上相应单位. 代码如下: import java.util.Scanner; ...
- JS将数字金额转换为中文大写
最近在做一个关于金额的票据显示,有部分需要将数字金额改为中文大写金额,下面给出具体实现的JS var changeMoney = function(n) {var fraction = ['角', ' ...
- [python]数字金额转换成大写金额
最近开始负责单位的测绘合同草拟和签订,所以打算用python-docx来制作模板,减少自己的工作量.因为合同中有金额的大写内容,所以做了一个转换的函数. 因为行业内几乎签不了上亿的合同,所以函数只能转 ...
- 数字金额转中文大写金额
public static String transAmount2Chinese(long amount) {//每4位一组,每一组多一位分隔符splitsString[] unit = {" ...
- Python:阿拉伯数字转换为中文大写数字(金额的读数规则)
萌萌帮班里同学做了一个python的编程作业,正好回顾一下python基础知识,以下源码和思考过程,代码全部原创. IDE:pycharm python版本:python3.7 ''' 实验目的:在银 ...
最新文章
- 从键盘输入10个互不相同的整数,找出其中最小的元素将其与数组中的第一个元素进行交换。
- 组件注册——@ComponentScan自动扫描组件指定扫描规则
- redis缓存的安装和使用
- java list wordcount,初试spark java WordCount
- html2canvas改成同步,html2canvas转为图片异步转同步问题(记录)
- [PYTHON] for循环中关于列表list中remove method 不得不说的秘密
- python解释器安装步骤_Python 解释器
- 天线发射功率计算公式_天线基本知识及应用―链路及空间无线传播损耗计算
- Java 质数输出的经典算法题面试可以用
- oracle linux 镜像下载|【最新】oracle linux 8.1官网镜像下载,让你下载oracle linux不被坑!
- java nekohtml,java – Spring Boot和Thymeleaf Neko HTML错误
- maya导入abc动画_大佬养成宝典:教你四十二招玩转MAYA(三)
- QNX分布式实时操作系统初步认识-QNX系统了解认识
- 语言模型(Language Modeling)”
- 一文通透优化算法:从随机梯度、随机梯度下降法到牛顿法、共轭梯度
- 中山公园再添一座新地标,青岛首家丛林书吧“林荫阅读室”
- 四阶魔方玩法总结V1.0
- connected papers 白嫖攻略
- 【C#】基础篇(2) C#实现串口助手,C#扫描串口
- 导弹发射-河南省第九届省赛D题