python的中文问题一直是让人不爽的一件事情,而python的一个强大之处恰恰是string的处理,而且string就难免不包含chinese。所以处理string中的chinese就变得很重要了。
实验室的complex network项目,目前是数据处理阶段,考虑到python的高效和强大的string功能,我决定使用python对大量的数据进行处理。
下面是一个简单的demo,先贴代码,然后进行说明:
python 代码
-
- import string
- import re
-
- identify = string.maketrans('', '')
-
- delEStr = string.punctuation + ' ' + string.digits
- delCStr = '《》()&%¥
-
- s = '中华人民共和国(北京)'
-
- s = s.translate(identify, delEStr)
- if re.findall('[\x80-\xff].', s):
- s = s.translate(identify, delCStr)
- print s
- else:
- print s
当然,首先是要import string和re(这里需要正则表达式功能)。
delEStr是一个包含英文标点符号和数字的字符串,就如 '(){}<>1234 ' 这样。delCStr是一个包含中文标点符号的字符串。s是一个测试字符串。
12行的功能就是把s中的英文标点符号都删除。下面一句是关键:
python 代码
- re.findall('[\x80-\xff].', s)
这行代码将返回一个list,如果s中包含中文,则返回一个包含每个汉字的非空的list,如果s中不包含中文,则返回一个空list(即[ ])。
第14行要删除这个含中文的字符串中的中文标点符号。
运行这段程序,打印出来的是“中华人民共和国北”,“京”呢?不见了。这就是python让人头疼的地方。错误出在第14行,可能原因是“京”的unicode编码和某两个相邻标点的组合编码相同了。我现在还没找到好的解决办法
这段代码最主要的应用就是translate和findall两个函数,不过在使用translate函数之前要构造一个identify,就像第5行代码那样。
出现了问题是好事,它可以促使自己更加深入的去学习,并且现在处于学习阶段,多遇到问题毕竟是好事,继续学习ing....
分享到:
- 2007-11-21 15:42
- 浏览 19686
- 评论(5)
- 论坛回复 / 浏览 (4 / 10230)
- 查看更多
相关推荐
Python是一种跨平台的计算机程序设计语言。 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、...
代码作用请参考我的文章《python 提取文字段落中的日期字符串》:https://blog.csdn.net/qq_23730073/article/details/126975066。 主要是提取阿拉伯数字的日期字符串,例如:需要识别的文字段,从“技术总是要...
公司名称提取该代码旨在从地址字符串中提取中文公司名称。 通过使用JIEBA和功能词列表,它可以从地址字符串中识别出公司的确切名称,必须知道此代码只能解析中文数据挖掘。
python中的字符串 1.字符串的概念 肉眼可以识别,具有特殊含义的字符组成串 2.如何定义字符串 1)可以根据弱数据类型直接定义(单引号,双引号,三引号都可以进行定义) 如s=“abc,python,asdf” 2)使用全局函数str...
python NLTK识别字符串中的人名等,命名实体识别-附件资源
python的字符串编码识别模块(第三方库): 官方地址: http://pypi.python.org/pypi/chardet import chardet import urllib # 可根据需要,选择不同的数据 TestData = urllib.urlopen('http://www.baidu.com/')....
用了anaconda,OpenCV,python3.6来实现代码的。Anaconda是一种用于数据科学和机器学习的开源Python发行版,由Anaconda, Inc.开发和维护。...它可以方便地在字符串中插入变量值,并支持各种数据类型
docstring到markdown 将Python文档字符串即时转换为Markdown Python 3.6+ 当前可以识别reStructuredText并将其多个功能转换为Markdown 将来也将能够转换Google文档字符串安装pip install docstring-to-markdown例子...
python字符串相似度 tdebatty likeity的Python3.x实现 一个实现不同字符串相似度和距离度量的库。 当前实现了十二种算法(包括Levenshtein编辑距离和同级,Jaro-Winkler,最长公共子序列,余弦相似性等)。 查看...
下面小编就为大家带来一篇解决python文件字符串转列表时遇到空行的问题。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
实时识别的图像数据与字符串形式的识别结果 字符串形式的用户信息 字符串形式的聊天消息 对GUI控件的操作信号 套接字文件 1.2.2 C/S 架构服务器数据需求 字符串形式的识别结果 字符串形式的聊天信息 字符串形式...
python 自动识别字符串编码的开源库 可以免费下载 共享给大家
Python文件默认的编码格式是ascii ,无法识别汉字,因为ascii码中没有中文。 所以py文件中要写中文字符时,一般在开头加 # -*- coding: utf-8 -*- 或者 #coding=utf-8。 这是指定一种编码格式,意味着用该编码存储...
crnn(基于pytorch、python3) 实现不定长中文字符识别-附件资源
可为多个,能得到所有的位置 Capture SetDict 设置字典 UseDict 使用字典 FindStr 查找字符串坐标 FindStrEx 查找字符串坐标 Ocr 识别文字 OcrEx 识别文字 BindWindow 绑定窗口 UnBindWindow 解除绑定
chardet 可以很方便的实现字符串/文件的编码检测.
colordraw.py用来画出由识别后得到的字符串来转换为颜色图,colordetect.py用来实现识别颜色加kociemba算法应用 压缩包里还有对应的六个面的魔方照片,运行python colordetect就可以看效果了 希望有什么建议随时提出...