# coding: utf-8

#设置分句的标志符号;可以根据实际需要进行修改

cutlist ="。!?".decode('utf-8')

#检查某字符是否分句标志符号的函数;如果是,返回True,否则返回False

def FindToken(cutlist, char):

if char in cutlist:

return True

else:

return False

#进行分句的核心函数

def Cut(cutlist,lines): #参数1:引用分句标志符;参数2:被分句的文本,为一行中文字符

l = [] #句子列表,用于存储单个分句成功后的整句内容,为函数的返回值

line = [] #临时列表,用于存储捕获到分句标志符之前的每个字符,一旦发现分句符号后,就会将其内容全部赋给l,然后就会被清空

for i in lines: #对函数参数2中的每一字符逐个进行检查 (本函数中,如果将if和else对换一下位置,会更好懂)

if FindToken(cutlist,i): #如果当前字符是分句符号

line.append(i) #将此字符放入临时列表中

l.append(''.join(line)) #并把当前临时列表的内容加入到句子列表中

line = [] #将符号列表清空,以便下次分句使用

else: #如果当前字符不是分句符号,则将该字符直接放入临时列表中

line.append(i)

return l

#以下为调用上述函数实现从文本文件中读取内容并进行分句。

for lines in file("t.txt"):

l = Cut(list(cutlist),list(lines.decode('gbk')))

for line in l:

if line.strip() !="":

li = line.strip().split()

for sentence in li:

print sentence

===================节操分隔线,以上为7月6日内容,以下为7月7日内容============================

不知何故,上述程序突然运行报错,位于“ l = Cut(list(cutlist),list(lines.decode('gbk'))) ”:UnicodeDecodeError: 'gbk' codec can't decode bytes in position 8-9: illegal multibyte sequence。

这肯定又是编码问题了!这是我目前最头疼的一个问题。这与那个t.txt的编码格式有关,之前是utf-8格式。经过多次尝试发现,把该文本文档的编码改为ANSI就又正常了。不懂,不理解,这东西吭爹!

python中文分句_Python 中文分句相关推荐

  1. python 中文分词_python中文分词,使用结巴分词对python进行分词(实例讲解)

    在采集 中文分词是中文文本处理的一个基础性工作,结巴分词利用进行中文分词. 其基本实现原理有三点: 1.基于Trie树结构实现高效的词图扫描,生成句子中汉字所有可能成词情况所构成的有向无环图(DAG) ...

  2. python中文名称_python中文名称

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! sdk 3.0 实现了统一化,各个语言版本的 sdk具备使用方法相同.接口调用方 ...

  3. python分句_Python 中文分句 | 学步园

    # coding: utf-8 #设置分句的标志符号:可以根据实际需要进行修改 cutlist =".!?".decode('utf-8') #检查某字符是否分句标志符号的函数:如 ...

  4. python统计词频_Python中文分词及词频统计

    中文分词 中文分词(Chinese Word Segmentation),将中文语句切割成单独的词组.英文使用空格来分开每个单词的,而中文单独一个汉字跟词有时候完全不是同个含义,因此,中文分词相比英文 ...

  5. python脚本接收参数 中文乱码_python 中文乱码问题深入分析

    在本文中,以'哈'来解释作示例解释所有的问题,"哈"的各种编码如下: 1. UNICODE (UTF8-16),C854: 2. UTF-8,E59388: 3. GBK,B9FE ...

  6. python unicode编码_python 中文unicode编码

    一. excel中写入中文报错UnicodeDecodeError : 'ascii' codec can't decode byte 0xe5 in position 0: ordinal not ...

  7. python表达匹配_python 中文正则表达匹配

    需求:由于某个n年前的工具的错误,在复制一批文件的时候产生了大量的"复件xxxxxxx""复件(2)XXXXX"等类似文件,由于目录结构深,文件多,预计在500 ...

  8. python的拼音_python 中文分词和拼音首字母

    昨天的算法课老师以中文分词为例讲了DP,换了种简单的方式(求分词后频率和最大)实现了一下,效果不错,频率词典是从这里找的: http://download.csdn.net/source/347899 ...

  9. python语料处理_Python中文语料批量预处理手记

    手记实用系列文章: 语料预处理封装类: #coding=utf-8 import os import jieba import sys import re import time import jie ...

最新文章

  1. Newtonsoft.Json 概述
  2. 如何将Dictionary绑定到Repeater?
  3. java oracle.sql.struct转字符串_把Oracle查询结果的一列转换为一字符串
  4. 树的高度 递归法和非递归法
  5. 【渝粤教育】电大中专建筑力学作业 题库
  6. 利用find同时查找多种类型文件
  7. 开源目标检测算法用于交通标志检测全方位评估
  8. python设计模式3-抽象工厂模式
  9. 微软 Powertoys 推出新的实用程序,自定义键盘快捷管理
  10. 图书管理系统活动,时序图
  11. 活得自我一点,做自己想做的事情,有意义的事情
  12. #博学谷it学习技术支持# Java学习心得
  13. Android源码刷机步骤
  14. vue之仿网易严选详解
  15. 浪潮服务器 虚拟光驱,玩转虚拟光驱:DAEMON TOOLS Pro
  16. CSS编写格式边框与渐变内容补充
  17. 【超详细】QQ空间说说爬取教程(看看你的女神在想什么~
  18. Zend 发送邮件报错
  19. python双击py一闪_python双击py一闪 python编程
  20. css中zoom的用法

热门文章

  1. 不是技术也能看懂云计算,大数据,人工智能
  2. MATLAB2018B下用Faster-RCNN做目标检测的训练和测试步骤
  3. 华大 HC32L130 调试问题总结
  4. 监控io性能、free命令、ps命令、查看网络状态、linux下抓包
  5. MERGE Into 无法更新ON子句中引用的列
  6. 一键修复手机电池_怎么恢复手机电池寿命(教你一键修复电池损耗)
  7. 基于Python的微信好友男女比例,区域排名,签名情感分析
  8. Python+Excel数据分析实战:军事体能考核成绩评定(一)项目概况
  9. 【golang】golang使用cmd去ping网址在window和linux的区别
  10. SN74LS00N芯片逻辑输出电平