# -*- coding: utf-8 -*-
def Num2MoneyFormat(change_number):""".转换数字为大写货币格式( format_word.__len__() - 3 + 2位小数 )change_number 支持 float, int, long, string"""format_word = ["分", "角", "元","拾", "百", "千", "万","拾", "百", "千", "亿","拾", "百", "千", "万","拾", "百", "千", "兆"]format_num = ["零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖"]if type(change_number) == str:# - 如果是字符串,先尝试转换成float或int.if '.' in change_number:try:change_number = float(change_number)except:'%s can\'t change' % change_numberelse:try:change_number = int(change_number)except:'%s   can\'t change' % change_numberif type(change_number) == float:real_numbers = []for i in range(len(format_word) - 3, -3, -1):if change_number >= 10 ** i or i < 1:real_numbers.append(int(round(change_number / (10 ** i), 2) % 10))elif isinstance(change_number, int):real_numbers = []for i in range(len(format_word), -3, -1):if change_number >= 10 ** i or i < 1:real_numbers.append(int(round(change_number / (10 ** i), 2) % 10))else:'%s   can\'t change' % change_numberzflag = 0  # 标记连续0次数,以删除万字,或适时插入零字start = len(real_numbers) - 3change_words = []for i in range(start, -3, -1):  # 使i对应实际位数,负数为角分if 0 < real_numbers[start - i] or len(change_words) == 0:if zflag:change_words.append(format_num[0])zflag = 0change_words.append(format_num[real_numbers[start - i]])change_words.append(format_word[i + 2])elif 0 == i or (0 == i % 4 and zflag < 3):  # 控制 万/元change_words.append(format_word[i + 2])zflag = 0else:zflag += 1if change_words[-1] not in (format_word[0], format_word[1]):# - 最后两位非"角,分"则补"整"change_words.append("整")return ''.join(change_words)print(Num2MoneyFormat(100523.69))

python 小写金额转化为大写金额相关推荐

  1. 工具篇——MoneyFormatUtil(用于将人民币小写金额转换成大写金额)

    写代码的四点: 1.明确需求.要做什么? 2.分析思路.要怎么做?(1,2,3--) 3.确定步骤.每一个思路要用到哪些语句.方法和对象. 4.代码实现.用具体的语言代码将思路实现出来. 学习新技术的 ...

  2. PB中小写金额转换成大写金额(发票类型)

    PB中小写金额转换成大写金额 //================================================================= // 功能:小写金额转换成大写金额 ...

  3. Java工具包:小写金额转换成大写金额

    源代码如下 package com.jian.stringUtil;/*** 工具类:小写金额转换成大写金额* * @author jianxuanbing* */ @SuppressWarnings ...

  4. 小写金额转换成大写金额的函数

    编写一个收费软件时要用到一个小写金额转换成大写金额的函数,我曾在网上找到一个用Powerbuilder写的函数,长达四五十行之巨,后来我自己用DELPHI写了一个函数,寥寥几行代码就搞定: funct ...

  5. 使用javabean把小写金额转换成大写金额

    public static void main(String[] args) {moneyConversion mc=new moneyConversion();String money=" ...

  6. 将数字金额转化为大写金额,且数字金额最多只保留两位小数

    采用element ui 中的input框实现,填写小写金额,自动实现大写金额 截图: 代码: 数字转大写金额实现: export function dealBigMoney(n) {var frac ...

  7. python数字金额转换为中文大写金额(角、分)

    初学python,有错望大佬改正,谢谢 编写程序,根据用户输入的金额数字转换成相应的中文大写数字.例如,1002.34转换为"壹仟零贰圆叁角肆分",100转换为"壹佰圆整 ...

  8. 将小写金额转换成大写金额[存储过程版]

    CREATE FUNCTION FAtoC /* 金额阿拉伯数字转换为中文的自定义函数 */ ( @ChangeMoney Money ) RETURNS VarChar(100) AS BEGIN ...

  9. [python]数字金额转换成大写金额

    最近开始负责单位的测绘合同草拟和签订,所以打算用python-docx来制作模板,减少自己的工作量.因为合同中有金额的大写内容,所以做了一个转换的函数. 因为行业内几乎签不了上亿的合同,所以函数只能转 ...

最新文章

  1. 架构高性能网站秘笈(一)——了解衡量网站性能的指标
  2. 由谈退格键的实现来学习字符编码
  3. Python_编写UDP通信编解码类、文件的上传、远程执行命令、黏包
  4. IOSday01 连线和程序标识
  5. 002 python准备做题的一些准备
  6. 程序员的失业危机原因及应对方法汇总
  7. mysql主从同步当天数据,mysql主从数据同步
  8. 阿里巴巴官方最新Redis开发规范!
  9. python牛顿法与拟牛顿法_python实现牛顿法求解求解最小值(包括拟牛顿法)【最优化课程笔记】...
  10. 修理牧场 (25 分)(优先队列 简单)
  11. vue怎么和python后端交互_python爬虫与Django框架vue交互的前后端代码详情(励志人生网实例)...
  12. 仅需6步!虹科教你如何在第三方软件CODESYS中配置PCAN
  13. ES集群不通,日志报[node-3] not enough master nodes discovered during pinging (found [[Candidate{node={node-3
  14. RealityCapture摄影测量软件
  15. 什么是ADB,什么是MC
  16. 一个比较有趣的题:推算今天星期几
  17. [RK3288][Android6.0] 调试笔记 --- 设置中文为默认输入法
  18. 39 个奇葩代码注释,看完笑哭了
  19. 观后感 - stormzhang 跨年直播
  20. 隐藏表白技能,python教你如何使用图片exif信息隐藏表白,教你如何修改,查询exif信息。

热门文章

  1. C++培训_001_WIN10的安装与激活_VS编译器的安装
  2. 《PHP基于GD库制作图形验证码》
  3. 手机网络邻居访问电脑_通过WiFi局域网在手机上观看电脑上的视频
  4. 对话推荐系统CRS论文精读RevCore: Review-augmented Conversational Recommendation
  5. 概率图模型(PGM)综述-by MIT 林达华博士
  6. Fair Resource Allocation in Federated Learning
  7. 单应性矩阵H和相机姿态参数R和T关系
  8. 如何判断微信/判断支付宝退款超期
  9. JSP实用教程第二章-JSP语法
  10. 求解VRP问题的节约里程法、sweep扫描算法和λ互换法