Python识别中文

本文介绍了在Python项目中遇到的中文乱码问题及其解决方案,包括设置工作平台、编辑器和安装文件的编码方式,以及在.py文件头部声明编码。

在Python程序中,一些程序对象,注释基本都用的中文,麻烦的问题就来了,调试时,有乱码!

不得已,痛下杀手,将整个项目中能用到的设置都搬出来!

1.在工作平台里面,设置编码为utf8

2.把编辑器的检查代码也设置为utf-8


3.设置安装文件的eclipse.ini,在文档里面加入-Dfile.encoding=UTF-8

4.最后一个,主动防御,在.py的文件首,声明一下

如#coding=utf-8

或者# -*- coding: utf-8 -*--

未完待续



中文信息计算机自动处理的研究已有几十年的 历史 , 但至今仍有许多技术难题没有得到很好解 决 , 中文姓名自动识别问题就是其中的一个。由于 它与中文文本的自动分词一样 , 属于中文信息处理 的基础研究领域 , 因而它的研究成果直接影响到中 文信息的深层次研究。汉语的自身特点使得中文信 息自动处理大多是先对要处理的文本进行自动分词 (加入显式分割符) , 然后再在分词的基础上进行词 法、语法、语义等方面的深入分析。而在分词阶 段 , 文本中的人名、地名以及其它专有名词和生词 大多被切分成单字词 , 在这种情形下如不能很好地 解决汉语文本中专有名词生词的识别问题 , 将给其 后的汉语文本的深入分析带来难以逾越的障碍。中 文姓名的自动识别问题就是在这种背景下提出来 的。对这一问题的研究目前采用的技术中主要利用 以下几方面的信息: 姓名用字的频率信息、上下文 信息[1 ,2 ] 、语料库统计信息[2 ] 、词性信息等[3 ] 。本 文的方法是 , 首先对中文人名的构成、姓名用字的 规律及上下文文本信息特征进行充分分析 , 在此基 础上建立起两组规则集 , 将其作用于测试文本 , 获 得初步识别结果 , 再利用大规模语料库的统计信息 对初步识别结果进行概率筛选 , 设定合适的阈值 , 输出最终识别结果。经对 50 多万字的开放语料测 试 , 系统自动识别出 1781 个中文人名 , 在不同的 筛选阈值下获得 90 %以上的识别准确率 , 而召回 率高于 91 %。
Python识别汉字主要有手写体汉字识别和图片文字识别(包括中文人名识别)等方法: - **手写体汉字识别**:使用 `sklearn` 库中的 `KNeighborsClassifier` 分类器进行手写字体汉字识别。示例代码如下: ```python import numpy as np import pandas as pd from sklearn.model_selection import train_test_split from sklearn.neighbors import KNeighborsClassifier from sklearn.metrics import accuracy_score # 1. 加载数据集 data = pd.read_csv('data.csv') # 2. 划分训练集和测试集 X = data.drop('label', axis=1) y = data['label'] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) # 3. 训练分类器 knn = KNeighborsClassifier(n_neighbors=3) knn.fit(X_train, y_train) # 4. 预测测试集数据 y_pred = knn.predict(X_test) # 5. 计算准确率 accuracy = accuracy_score(y_test, y_pred) print("准确率:", accuracy) ``` - **图片文字识别**:结合 `pytesseract` 库和 `PIL` 库,使用 `Tesseract` 工具进行图片中的文字识别。示例代码如下: ```python import pytesseract from PIL import Image # 指定tesseract安装路径。如果配置好环境变量,该行应注释。 # pytesseract.pytesseract.tesseract_cmd = r'C:\\Program Files\\Tesseract-OCR' # 根据实际路径修改 # 打开图片,确保正确的图片路径 image = Image.open('D:\\chx\\temp.png') # 使用Tesseract进行文字识别。如果要识别中文,需参数lang='chi_sim' text = pytesseract.image_to_string(image, lang='chi_sim') print(text) ``` - **中文人名识别**:使用 `HanLP` 库构建人名识别器对文本进行中文人名识别。示例代码如下: ```python from pyhanlp import * segment = HanLP.newSegment().enableNameRecognize(True) text = "这里填入要识别的文本" result = segment.seg(text) print(result) ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值