python将中文数字转化成阿拉伯数字的简单方法

正则表达式提取文本中的数字

这里演示一下文本中提取中文年份

import re
m0 = "在一九四九年新中国成立比一九九零年低百分之五点二人一九九六年击败俄军,取得实质独立"
pattrern1 = '[零一二三四五六七八九]{4,}'
pattrern2 = '[〇一二三四五六七八九零壹贰叁肆伍陆柒捌玖貮两]{4,}'
time1 = re.findall(pattrern1,m0)#转化数字

提取年份如:‘1949', ‘1990', ‘1996'

这里给出许多正则表达式的样例:example

中文转化成阿拉伯数字

创建一个字典然后讲数字进项匹配:

CN_NUM = {
 '〇': 0, '一': 1, '二': 2, '三': 3, '四': 4, '五': 5, '六': 6, '七': 7, '八': 8, '九': 9, '零': 0,
 '壹': 1, '贰': 2, '叁': 3, '肆': 4, '伍': 5, '陆': 6, '柒': 7, '捌': 8, '玖': 9, '貮': 2, '两': 2,}

for i in range(len(time1)):
 new_str = ''
 for j in time1[i]:
 new_str += str(CN_NUM[j])
 time1[i] = new_str
time1

这样结果就出来啦,成功将上文例子中文年份转化成阿拉伯数字:‘1949', ‘1990', ‘1996'

完整代码

# 2、将句子中年份的大写数字改为阿拉伯数字
import re
m0 = "在一九四九年新中国成立比一九九零年低百分之五点二人一九九六年击败俄军,取得实质独立"
pattrern1 = '[零一二三四五六七八九]{4,}'
pattrern2 = '[〇一二三四五六七八九零壹贰叁肆伍陆柒捌玖貮两]{4,}'
time1 = re.findall(pattrern1,m0)#转化数字
CN_NUM = {
 '〇': 0, '一': 1, '二': 2, '三': 3, '四': 4, '五': 5, '六': 6, '七': 7, '八': 8, '九': 9, '零': 0,
 '壹': 1, '贰': 2, '叁': 3, '肆': 4, '伍': 5, '陆': 6, '柒': 7, '捌': 8, '玖': 9, '貮': 2, '两': 2,}

for i in range(len(time1)):
 new_str = ''
 for j in time1[i]:
 new_str += str(CN_NUM[j])
 time1[i] = new_str
time1

总结

到此这篇关于python将中文数字转化成阿拉伯数字的文章就介绍到这了,更多相关python中文数字转阿拉伯数字内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python简单实现阿拉伯数字和罗马数字的互相转换功能示例

    本文实例讲述了Python实现阿拉伯数字和罗马数字的互相转换功能.分享给大家供大家参考,具体如下: 前面一篇介绍了<Java实现的求解经典罗马数字和阿拉伯数字相互转换问题>,这里来看看Python的实现方法. 题目很简单,如果之前也做过这种题目的话,相信对于什么是罗马数字就不会很陌生了,罗马数字是很古老的计数方法,现在的一些地方还有见到它的使用,下面简单贴两张维基百科的图片简单回顾一下罗马数字: 今天简单实现一下,阿拉伯数字和罗马数字之间的相互转化问题,很简单就不多说了,下面是具体的实现: #

  • Python使用cn2an实现中文数字与阿拉伯数字的相互转换

    工作中经常遇到阿拉伯数字转换称为中文数字或者大写金额,在网上搜了下,cn2an口碑较好,遂进行了一番学习. 安装 pip install cn2an 依赖库为setuptools.PyYAML 查看版本 In [1]: import cn2an In [2]: cn2an.__version__ Out[2]: '0.5.8' 查看模块定义的标识符 In [3]: dir(cn2an) Out[3]: ['An2Cn', 'Cn2An', 'Transform', '__all__', '__b

  • python实现将英文单词表示的数字转换成阿拉伯数字的方法

    本文实例讲述了python实现将英文单词表示的数字转换成阿拉伯数字的方法.分享给大家供大家参考.具体实现方法如下: import re _known = { 'zero': 0, 'one': 1, 'two': 2, 'three': 3, 'four': 4, 'five': 5, 'six': 6, 'seven': 7, 'eight': 8, 'nine': 9, 'ten': 10, 'eleven': 11, 'twelve': 12, 'thirteen': 13, 'fourt

  • Python实现将罗马数字转换成普通阿拉伯数字的方法

    本文实例讲述了Python实现将罗马数字转换成普通阿拉伯数字的方法.分享给大家供大家参考,具体如下: 罗马数字,我们在某些电视中或者现实生活中都曾经看到过,近日,学习Python时,也遇到了罗马数字的解说,于是顺便写了一个小程序来练习罗马数字到我们日常生活普通数字之间的转换的小函数. 首先,咱们了解一下,罗马数字的潜在法则, 在罗马数字中,利用7个不同字母进行重复或者组合来表达各式各样的数字. I = 1 V = 5 X = 10 L = 50 C = 100 D = 500 M = 1000

  • Python将阿拉伯数字转换为罗马数字的方法

    本文实例讲述了Python将阿拉伯数字转换为罗马数字的方法.分享给大家供大家参考.具体实现方法如下: def numToRomanNum(Num): """digital will be converted into Roman numerals,Ex: numToRomanNum(3999)""" if Num < 1 or Num > 3999: print 'The Num must in 1-3999' else: NumDi

  • python中将阿拉伯数字转换成中文的实现代码

    复制代码 代码如下: #!/usr/bin/python #-*- encoding: utf-8 -*- import types class NotIntegerError(Exception): pass class OutOfRangeError(Exception): pass _MAPPING = (u'零', u'一', u'二', u'三', u'四', u'五', u'六', u'七', u'八', u'九', ) _P0 = (u'', u'十', u'百', u'千', )

  • Python实现中文数字转换为阿拉伯数字的方法示例

    本文实例讲述了Python实现中文数字转换为阿拉伯数字的方法.分享给大家供大家参考,具体如下: 一.需求 今天写了三千二百行代码. 今天写了3200行代码. 两行意思相同,只是表达方式不太能够,统一掉. 二.原理 数字的特征是   数字 + 单位,例如三百,四十二,九千零二 可以从后往前遍历,遇到的是0到9的数字,就乘以前一位的单位,遇到新的单位(十百千万)就替换成数字供下一个数字用. 三.举例 五百四十三 1. 三-->3 3 <10 : total = 3 2. 十-->10, 10

  • python将中文数字转化成阿拉伯数字的简单方法

    正则表达式提取文本中的数字 这里演示一下文本中提取中文年份 import re m0 = "在一九四九年新中国成立比一九九零年低百分之五点二人一九九六年击败俄军,取得实质独立" pattrern1 = '[零一二三四五六七八九]{4,}' pattrern2 = '[〇一二三四五六七八九零壹贰叁肆伍陆柒捌玖貮两]{4,}' time1 = re.findall(pattrern1,m0)#转化数字 提取年份如:'1949', '1990', '1996' 这里给出许多正则表达式的样例:

  • Python 数字转化成列表详情

    目录 1. digitize 2. Python判断对象是否可迭代 本篇阅读的代码实现了将输入的数字转化成一个列表,输入数字中的每一位按照从左到右的顺序成为列表中的一项. 本篇阅读的代码片段来自于30-seconds-of-python. 1. digitize def digitize(n): return list(map(int, str(n))) # EXAMPLES digitize(123) # [1, 2, 3] 该函数的主体逻辑是先将输入的数字转化成字符串,再使用map函数将字符

  • Python 如何优雅的将数字转化为时间格式的方法

    将数字转化成时间格式 from dateutil.parser import parse a=20170825 b=str(a) c=parse(b) print(c) 2017-08-25 00:00:00 将时间按照天排列,转化为一个数字,用来做时间序列分析 from matplotlib.pylab import date2num e = date2num(c) e Out[30]: 736566.0 将时间转化为时间戳 d=str(c) d Out[25]: '2017-08-25 00

  • 利用Python将图片批量转化成素描图的过程记录

    目录 前言 程序 Method 1 Method 2 完整代码 结果 总结 前言 正常图片转化成素描图片无非对图片像素的处理,矩阵变化而已.目前很多拍照修图App都有这一功能,核心代码不超30行.如下利用 Python 实现读取一张图片并将其转化成素描图片.至于批处理也简单,循环读取文件夹里的图片处理即可.具体代码可以去我的 GitHub下载. 程序 Method 1 def plot_sketch(origin_picture, out_picture) : a = np.asarray(Im

  • Python处理json字符串转化为字典的简单实现

    今天一个朋友给个需求: 来来 {'isOK': 1, 'isRunning': None, 'isError': None} 怎么转换成字典 好,一看就是json转化很简单,开始: import json a = "{'isOK': 1, 'isRunning': None, 'isError': None}" print json.loads(a) 死活出不来结果,还报错,查了两个小时的百度,没搞明白. 最后,直接复制网上的代码,OK,运行成功,可是把我的a变量填进去,不行,报错:开

  • python将图片文件转换成base64编码的方法

    本文实例讲述了python将图片文件转换成base64编码的方法.分享给大家供大家参考.具体实现方法如下: import base64 f=open(r'c:\jb51.gif','rb') #二进制方式打开图文件 ls_f=base64.b64encode(f.read()) #读取文件内容,转换为base64编码 f.close() 调用方法如下: 复制代码 代码如下: <img src="R0lGODlh1wBOAPcAAAAAAP///7a4u+jq7bG1ucrN0N7g4tLU

  • python实现class对象转换成json/字典的方法

    本文实例讲述了python实现class对象转换成json字典的方法.分享给大家供大家参考,具体如下: # -*- encoding: UTF-8 -*- class Student: name = '' age = 0 def __init__(self, name, age): self.name = name self.age = age def convert_to_dict(obj): '''把Object对象转换成Dict对象''' dict = {} dict.update(obj

  • javascript实现将数字转成千分位的方法小结【5种方式】

    本文实例讲述了javascript实现将数字转成千分位的方法.分享给大家供大家参考,具体如下: 尽管离过年还有两个月之久,春运抢票的战斗已经打响了,悲剧的是我还没抢到票,看到某浏览器上的数字时,想到一个经典面试题,没错,就是数字转千分位.如将数字87463297转成87,463,297,方法有很多种,我这里只想到5种. 1.利用正则的零宽度正预测先行断言(?=exp),名字有点难记,意思是它断言自身出现的位置的后面能匹配表达式exp,对此概念还不明白的可以戳这里,这里不做过多解释.数字千分位的特

随机推荐