python版本3.4.2:
1、书上的例子是
from nltk.corpus import wordnet as wn
wn.synset(‘car.n.01‘).lemma_names #获得同义词集
wn.synset(‘car.n.01‘).definition #获得定义
在3.4.2下执行得到输出:
<bound method Synset.lemma_names of Synset(‘car.n.01‘)>和
<bound method Synset.definition of Synset(‘car.n.01‘)>
可能是版本问题,在上面命令行后加上()即可,即如下:
wn.synset(‘car.n.01‘).lemma_names()
wn.synset(‘car.n.01‘).definition()
2、书上是from urllib import urlopen,但是报错:ImportError: cannot import name ‘urlopen‘;实际原因是python3的库和python2的库的位置不同,这里应该改成:
from urllib.request import urlopen。说道这里,顺便说一下from ... import ...和import的不同,如果使用import,则导入后如果访问这个模块的功能,需要全路径写上,而from ... import呢,访问时就直接写上import后面的即可(可能的意思是这个import的东东是from这里来的)。
3、python idle在backspace删除时总是感觉删除半个byte,有个白框框,可以按住alt键,一次删一个,按ctrl是一次删一个词
4、可能也是python3的缘故,urlopen(url).read()返回的是bytes,而不是str,python中str和bytes转化比较简单,例如bytes--》string,a.decode(encoding="utf-8");string-->bytes,a.encode(encoding="utf8")
5、对于自然语言处理,首先要将文本分词,将标点符号和单词分开,然后再处理