Python將阿拉伯數字轉化為中文大寫

2021-09-05 05:38:51 字數 1051 閱讀 8931

利用python將阿拉伯數字轉化為中文大寫,其實最麻煩的地方就是中間空多個0的問題,這種情況下,採用拆分法則,將乙個大數字,先拆分成整數部分和小數部分,再對整數部分按照仟、萬、億、兆分位拆分為四個字串組成的list,每個字串最多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=

self.xdict= #數字識別符號

self.gdict=

def csplit(self,cdata): #拆分函式,將整數字串拆分成[億,萬,仟]的list

g=len(cdata)%4

csdata=

lx=len(cdata)-1

if g>0:

k=gwhile k<=lx:

k+=4

return csdata

def cschange(self,cki): #對[億,萬,仟]的list中每個字串分組進行大寫化再合併

lenki=len(cki)

i=0lk=lenki

chk=u''

for i in range(lenki):

if int(cki[i])==0:

if i本文參照網上的一些寫法做了一些改動,使用起來更加嚴謹。

將漢語數字轉化為阿拉伯數字

1,例如 輸入 二百五十 輸出 250 輸入 一百三十八 輸出 138 1 python實現具體資訊如下 class solution object def chinesetoint self,strs if strs return none dicts strs strs.replace 零 li...

PHP將阿拉伯數字轉化為漢字

以下 目的是將1 2 3這種阿拉伯數字轉化為 一,二,三這種漢字,並附帶單位。因為本人水平有限,所以實現的方法比較笨拙,也可能存在bug,歡迎各位指正。arraynumber 0 零 1 一 2 二 3 三 4 四 5 五 6 六 7 七 8 八 9 九 arrayunit 0 1 十 2 百 3 ...

阿拉伯數字轉化為中文大寫

var alabo function num let tmpnewchar 最後結果 let numstr number num tostring split 0 數字轉化字串 if test numstr let bignum 億 萬 千 百 十 定義單位陣列 let bignumslice 定義...