python小写转大写金额

摘自:http://shine-it.net/index.php?topic=14575.0

def _rmb_upper(self, value):
        """
        人民币大写
        来自:http://topic.csdn.net/u/20091129/20/b778a93d-9f8f-4829-9297-d05b08a23f80.html
        传入浮点类型的值返回 unicode 字符串
        """
        map  = [u"零",u"壹",u"贰",u"叁",u"肆",u"伍",u"陆",u"柒",u"捌",u"玖"]
        unit = [u"分",u"角",u"元",u"拾",u"百",u"千",u"万",u"拾",u"百",u"千",u"亿",
                u"拾",u"百",u"千",u"万",u"拾",u"百",u"千",u"兆"]

        nums = []   #取出每一位数字,整数用字符方式转换避大数出现误差
        for i in range(len(unit)-3, -3, -1):
            if value >= 10**i or i < 1:
                nums.append(int(round(value/(10**i),2))%10)

        words = []
        zflag = 0   #标记连续0次数,以删除万字,或适时插入零字
        start = len(nums)-3
        for i in range(start, -3, -1):   #使i对应实际位数,负数为角分
            if 0 != nums[start-i] or len(words) == 0:
                if zflag:
                    words.append(map[0])
                    zflag = 0
                words.append(map[nums[start-i]])
                words.append(unit[i+2])
            elif 0 == i or (0 == i%4 and zflag < 3): #控制‘万/元’
                words.append(unit[i+2])
                zflag = 0
            else:
                zflag += 1

        if words[-1] != unit[0]:    #结尾非‘分’补整字
            words.append(u"整")
        return ‘‘.join(words)
时间: 2024-11-03 02:56:01

python小写转大写金额的相关文章

人民币 小写金额转换为大写金额

### 人民币 小写金额转换为大写金额 标签(空格分隔): 人民币 小写金额转换为大写金额 --- jsp:```div class="form-group"><label class="col-sm-4 control-label">合计人民币金额(小写):</label><div class="col-sm-7"><input id="totalRmbLower" type=

人民币小写金额转大写金额

#region 人民币小写金额转大写金额 /// <summary> /// 小写金额转大写金额 /// </summary> /// <param name="Money">接收需要转换的小写金额</param> /// <returns>返回大写金额</returns> public static string ConvertMoney(this decimal Money) { //金额转换程序 string

Python TIPS上一道关于人民币金额小写转大写的题

人民币金额打印 题目链接:here.我发现我写的好复杂,但万幸编码还算符合人类,看了其他答案,感觉都是天书. #!/usr/bin/env python # -*- coding: utf-8 -*- # @Date : 2017-06-09 # @Author : Bob Liao ([email protected]) # @Link : https://github.com/coderchaser # @Version : python3.4 #创建大小写转换字典 num_dic={ #

random 模块 python 生成大写字母,小写字母及数字的5位随机数

import random print(random.random()) #0.1-1 print(random.randint(1,8)) #1-8 print(random.choice("helloworld")) #h e l l o w o r l d 打散字符串,随机输出一个. print(random.choice(["123","456","777"])) #[]这种形式???777 print(random.

python小练习之将字符串转换成第一个字母大写后面字母小写的形式

def format_name(s):     return s[0].upper() + s[1:].lower()       print map(format_name, ['adam', 'LISA', 'barT'])

小写金额转换大写金额

var digitUppercase = function(n) { var fraction = ['角', '分']; var digit = [ '零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖' ]; var unit = [ ['元', '万', '亿'], ['', '拾', '佰', '仟'] ]; var head = n < 0 ? '欠' : ''; n = Math.abs(n); var s = ''; for (var i

Excel小写金额转大写金额公式

=IF(ROUND(A6,2)<0,"无效数值",IF(ROUND(A6,2)=0,"零",IF(ROUND(A6,2)<1,"",TEXT(INT(ROUND(A6,2)),"[dbnum2]")&"元")&IF(INT(ROUND(A6,2)*10)-INT(ROUND(A6,2))*10=0,IF(INT(ROUND(A6,2))*(INT(ROUND(A6,2)*100)

js 将页面小写金额转换成大写金额

function changeChineseNumber(num) { if (isNaN(num) || num > Math.pow(10, 12)) return "" var cn = "零壹贰叁肆伍陆柒捌玖" var unit = new Array("拾百千", "分角") var unit1= new Array("万亿", "") var numArray = nu

linux+jmeter+python基础+抓包拦截

LINUX 一 配置jdk 环境 *需要获取root权限,或者切换为root用户 1.windows下载好,去 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 官方网站下载jdk(linux相应版本) 2.在usr目录下创建java路径文件夹 [root bin]cd /usr mkdir java 3.将jdk-8u60-linux-x64.tar.gz放到刚才创建的文件夹下