Python은 아라비아 숫자를 중국어 대문자로 변환합니다.

高洛峰
풀어 주다: 2016-10-18 10:36:01
원래의
3080명이 탐색했습니다.

파이썬을 사용하여 아라비아 숫자를 중국어 대문자로 변환합니다. 실제로 가장 문제가 되는 부분은 중간에 0이 여러 개 있는 문제입니다. 이 경우 분할 규칙을 사용하여 큰 숫자를 정수 부분으로 분할합니다. 소수 부분을 선택한 다음 정수 부분을 천, 만, 십억, 조의 자릿수에 따라 4개의 문자열 목록으로 분할합니다. 각 문자열은 최대 4자까지 가능하며 대문자 함수를 사용하여 변환합니다. 각 숫자의 문자열을 대문자로 변환하고 마지막에 병합하면 문제가 줄어들고 처리가 비교적 간단해집니다.

#!/usr/bin/env python
# -*- coding: utf-8 -*-
'''
#算法说明:要求字符串输入,现将字符串差费为整数部分和小数部分生成list[整数部分,小数部分]
#将整数部分拆分为:[亿,万,仟]三组字符串组成的List:['0000','0000','0000'](根据实际输入生成阶梯List)
#例如:600190000010.70整数部分拆分为:['600','1900','0010']
#然后对list中每个字符串分组进行大写化再合并
#最后处理小数部分的大写化
'''
class cnumber:
    cdict={}
    gdict={}
    xdict={}
    def __init__(self):
        self.cdict={1:u'',2:u'拾',3:u'佰',4:u'仟'}
        self.xdict={1:u'元',2:u'万',3:u'亿',4:u'兆'} #数字标识符
        self.gdict={0:u'零',1:u'壹',2:u'贰',3:u'叁',4:u'肆',5:u'伍',6:u'陆',7:u'柒',8:u'捌',9:u'玖'}    
    def csplit(self,cdata): #拆分函数,将整数字符串拆分成[亿,万,仟]的list
        g=len(cdata)%4
        csdata=[]
        lx=len(cdata)-1
        if g>0:
            csdata.append(cdata[0:g])
        k=g
        while k<=lx:
            csdata.append(cdata[k:k+4])
            k+=4
        return csdata
                  
    def cschange(self,cki): #对[亿,万,仟]的list中每个字符串分组进行大写化再合并
        lenki=len(cki)
        i=0
        lk=lenki
        chk=u&#39;&#39;
        for i in range(lenki):
            if int(cki[i])==0:
                if i
로그인 후 복사


원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!