学习流程记录
20170502
经过查阅资料对最大逆向匹配算法上有了概念性的理解, 但是要具体用某一种编程工具来实现还是需要好好思考一下, 需要用什么方法实现,以及各种语法规则
手中材料有一些文章的已经切好的词, 放在表格的某一列,一词一格.
停用词表一个, 一词一格
N篇待切文章(均在切词表有)
由于数据较大可以自己制作小型测试数据,以方便调试.
5.7–5.10
import xlrd
def read_txt(path):
# path = r'D:\Ditys\python learning\学习任务\20170313最大逆向匹配分词算法\测试数据\测试文本.txt'
with open(path, 'r',encoding = 'gbk')as f_txt: #需要加ingore 忽略不在gbk等之类的非法字符
lines = f_txt.read()
print(lines)
print('-----1------')
return (lines)
def read_xlsx(path,colnum):
print('-----2------')
xl = xlrd.open_workbook(path)
table = xl.sheets()[0]
data = list(table.col_values(colnum))
print(data)
return data #分别读取的匹配词表
def deal_data(data,word_list):
print('开始处理数据')
dling = '' #用于待切字符串 (默认子串长度是预设词长)
dealed = '' #把切好的
maxwor_len = 2 #预设最大词长
while len(data)>0 :
if len(data)<=maxwor_len: #切到最后几个字的时候(小于预设词长)
dling = data # print(dling)
else:
dling = data[-maxwor_len:] #从倒数第maxlen 到最后,都取出来
print(dling)
now_len = len(dling)
for i in range(0,now_len): ###循环次数是dling的初长度
print(