python中漢字轉數字
阿新 • • 發佈:2019-02-19
#!/usr/bin/env python
# -*- coding: utf-8 -*-
common_used_numerals_tmp ={'零':0, '一':1, '二':2, '三':3, '四':4, '五':5, '六':6, '日':7, '八':8, '九':9, '十':10}
common_used_numerals = {}
for key in common_used_numerals_tmp:
common_used_numerals[key.decode('utf8')] = common_used_numerals_tmp[key]
def chinese2digits (uchars_chinese):
total = 0
r = 1
for i in range(len(uchars_chinese) - 1, -1, -1):
val = common_used_numerals.get(uchars_chinese[i])
if val >= 10 and i == 0: #應對 十三 十四 十*之類
if val > r:
r = val
total = total + val
else:
r = r * val
#total =total + r * x
elif val >= 10:
if val > r:
r = val
else:
r = r * val
else:
total = total + r * val
return total