通过Python根据汉语水平词汇与汉字等级大纲进行数据统计
汉语水平词汇与汉字等级大纲
汉语水平词汇与汉字等级大纲是由国家汉语水平考试委员会办公室考试中心出台的用于衡量汉语为第二语言的学习者对汉语词汇和汉字的掌握水平的标准。在对外汉语的教学中,不论是教学教材的设计或者是课堂授业,都以此为参考依据。各级汉语水平考试以及最终成绩的评测,也以它为标准。
为了能够快速有效的对学习者输出的文章中的用词分布做出统计并挖掘相关数据,现开发如下程序,将学习者输出的文章中的词素与等级大纲进行对比,并统计每个等级的词汇出现的数量和占比。从而能够更加直观快捷的掌握学习者的相关水平并进行量化评价。
说明
母亲大人的学生写了文章,母亲大人要统计数据,大过年的让我母亲一个老教授对着电脑一个一个查真是太让我看不下去了(ಥ_ಥ),于是花了一个小时写了个小程序替她查表,上面说的好厉害的那个大纲其实就是个词表,然后把她学生的文章也整理成单表然后输进一个list里,接着就是for循环的查询了,不需要排序也不需要优化算法,真的是入门等级的程序。真正的难点其实是在汉语字符编码上。。。
代码
如前面所说的,不是什么很厉害的代码,贻笑方家了,有需要的自取。。。
#!/usr/bin/python
#coding = UFT-8
levellist=[] #用来储存等级列表
#读取汉语水平词汇与汉字等级大纲进行等级划分
levelfile = open( "level.txt", mode='r', encoding='UTF-8')
#存为列表
for line in levelfile.readlines():
levellist.append(line.rstrip())
#查询词汇等级分布,查一下每一级最后一个词在哪里,其实算一下也行
#print(levellist[5])
#print (levellist.index("座右铭"))
#print (len(levellist))
#文件用完要关上
levelfile.close()
#词汇列表等级分布
print ("词汇列表等级分布")
print ("甲级词:0-1042")
print ("乙级词:1043-3079")
print ("丙级词:3080-5285")
print ("丁级词:5286-8861"