import re # 导入正则表达式库
import cn2an # 导入中文转阿拉伯数字包
lis0=['第三版','第四版','第二版','第二十八版','第一千五百版','第十亿五千万版','第一亿五千万版','第一万五千八百零一版','第一百零五版']
dict_0={}
for i in lis0:
str =i
pattrern1 = '[零一二三四五六七八九十百千万亿]' # 正则匹配条件
nums = re.findall(pattrern1,str) # 将匹配的中文数字提取出来放在数组形式里
nums=''.join(nums)#提取中文数字
output=cn2an.cn2an(nums)#转换为阿拉伯数字
num_str=format(output)#数字转换为字符串
new_str=str.replace(nums,num_str)#新字符串
dict_0[str]=output
lis0_sort=sorted(dict_0.items (),key=lambda x:x[1],reverse=False) #按照第二数字升序排序
new_lis0=[i[0] for i in lis0_sort]#去掉用于排序的元组的第二个元素数字
print('原字符串列表:',lis0,'\n升序排序后字符串列表',new_lis0)
排序中文数字,中文转阿拉伯数字
最新推荐文章于 2023-06-01 18:39:44 发布