6.4 pip 与 jieba
除了 Python 内置模块,还可以安装第三方模块。第三方模块通常由社区或公司维护,可以扩展 Python 的能力。
pip
pip 是 Python 常用的包管理工具(package manager),用于安装、升级、查看和卸载第三方包。
bash
pip install jieba
pip list
pip install --upgrade jieba
pip uninstall jieba在真实项目中,通常还会使用虚拟环境(virtual environment)来隔离项目依赖,避免不同项目之间的包版本互相影响。
正在加载概念检查...
jieba 分词
中文文本没有像英文那样天然用空格分词。做中文文本分析时,首先要把句子切分成词语,这一步叫分词。
jieba 支持多种分词模式:
- 精确模式(exact mode):尽量准确地切分词语,适合普通文本分析。
- 全模式(full mode):尽可能列出所有可能成词的片段,速度快但可能冗余。
- 搜索引擎模式(search engine mode):在精确模式基础上进一步切分长词,适合搜索。
正在加载交互实验...
固定文本分词
因为我们还没有学习文件读取,本节先使用写在程序里的固定文本。下面的例子把一段中文切分成词语:
python
import jieba
text = "人工智能正在改变教育方式,互动教程可以帮助学习者把抽象概念变得具体。"
words = jieba.lcut(text)
print(words)一次可能的运行结果:
text
['人工智能', '正在', '改变', '教育', '方式', ',', '互动', '教程', '可以', '帮助', '学习者', '把', '抽象', '概念', '变得', '具体', '。']如果要做简单词频统计,可以先过滤掉标点和单字词,再用字典自己计数:
python
import jieba
text = "人工智能正在改变教育方式,人工智能也正在改变学习方式。"
words = jieba.lcut(text)
frequency = {}
for word in words:
if len(word) <= 1:
continue
frequency[word] = frequency.get(word, 0) + 1
items = list(frequency.items())
items.sort(key=lambda item: item[1], reverse=True)
print(items[:5])正在加载概念检查...
正在加载本节练习...