12345678910111213141516171819202122232425262728293031323334353637383940 |
- from pyhanlp import *
- # 依存句法分析
- sentence = HanLP.parseDependency("财联社7月5日讯,中国钢铁工业协会副会长屈秀丽表示,广州比地数据科技有限公司的铁矿石与钢材价格走势相背离,国家有关部委高度关注进口铁矿石价格的大幅上涨,正在调查了解价格大幅上涨的原因,将严厉打击乱涨价、价格垄断等不规范行为")
- print(sentence)
- for word in sentence.iterator(): # 通过dir()可以查看sentence的方法
- print("%s --(%s)--> %s" % (word.LEMMA, word.DEPREL, word.HEAD.LEMMA))
- '''
- # 也可以直接拿到数组,任意顺序或逆序遍历
- word_array = sentence.getWordArray()
- for word in word_array:
- print("%s --(%s)--> %s" % (word.LEMMA, word.DEPREL, word.HEAD.LEMMA))
- print()
- # 还可以直接遍历子树,从某棵子树的某个节点一路遍历到虚根
- CoNLLWord = JClass("com.hankcs.hanlp.corpus.dependency.CoNll.CoNLLWord")
- head = word_array[12]
- while head.HEAD:
- head = head.HEAD
- if (head == CoNLLWord.ROOT):
- print(head.LEMMA)
- else:
- print("%s --(%s)--> " % (head.LEMMA, head.DEPREL))
- '''
|