NLTK-lite class Tree的实现(1)
来源:互联网 发布:江苏省教师网络培训 编辑:程序博客网 时间:2024/05/08 06:55
Nltk是由美国宾夕法尼亚大学人员用python开发的一套自然语言开发包,提供自然语言处理过程中的基本组件,如:分词,词性标注,句法分析等,用于教学及实验。其官方连接为:http://nltk.sourceforge.net/,由于其是开源的,因此也是一套python编写大型项目的良好教程,我们可以参考。
最近正在系统地重温Python中类的概念、机制、应用。结合NLTK中class Tree的实现来加深理解。
class Tree,在nltk中主要用于句法分析树的表示及操作,由于Treebank是一个十分有名的、权威的语料,因此,掌握class Tree的实现对我们实验过程中编写代码十分有益。
1.构造函数
class Tree(list):
…
这是Tree的定义,可以看出,Tree是对列表的继承,列表是基类,Tree为子类。显然,list提供的各种函数,如:append(),__init__(), __getitem__()等等,Tree也全部继承来了。
这是Tree的构造函数,每次调用Tree()的时候,都会自动的调用__init__()函数来初始化Tree对象。
其参数有三个,分别为:self,node,children。通常来说,self是类内部函数必有的一个参数,是具体对象实例的引用,用于在实例化的时候保证函数处理的数据是当前正在处理的对象实例的数据;node,是一个字符串,表示句法树中的句法符号,如:‘S’表示句子的根节点,‘VP’表示是一个动词短语,等等;children是一个列表,其元素可能是Tree类型实例,也可能是字符串表示叶子节点,这也比较好理解,因为tree都是递归定义的。因此,我们基本可以知道一个Tree的大体结构:一个句法标记,以及一个孩子列表。
__init__()调用list的构造函数list.__init__(),用childred来初始化Tree实例。继承是一种is a关系,所以Tree本身就是一个列表,Tree也继承了list的构造函数,但由于其本身也有一个构造函数,因此必须显式的调用list的构造函数,其方法便是调用baseClassName.__init__()。通过这个例子,就清楚了继承的子类应如何调用基类的构造函数。node初始化子类自身的数据self.node,这是list实例所不具有的属性,属于子类对基类的扩展。
- NLTK-lite class Tree的实现(1)
- word2Vec--(1) nltk实现简单的切词,情感分析,文本相似度(TF-IDF)
- CCN-lite的安装及场景实现
- NLTK 学习笔记(1)
- nlp nltk note(1)
- nltk-1
- Flash Lite 的丰富应用(组图)
- 自然语言处理的一些算法研究和实现(NLTK)
- nltk 3.0 的parse
- NLTK的词性
- nltk的简单应用
- NLTK的词性[转]
- dispatch.s——MQX-Lite调度与中断系统的基础(1)
- Flash Lite的资源
- orm Lite的使用
- NLTK笔记1
- NLTK学习(一)
- NLTK
- 移动网络的演进
- 批命令
- asp.net身份验证和授权
- 深入探究EJB应用技术的体系结构1
- MOSS 工作流开发入门学习!
- NLTK-lite class Tree的实现(1)
- nand nor flash
- Asp.Net Forms验证
- oracle 函数(一)
- 用代码看32位和64位的区别
- HI SOA
- CWSS发布版本历史, 持续更新中
- 使用.NET发送邮件
- Asp.net环境下如何生成随机图片