有事欢迎大家给我留言~

有事欢迎大家给我留言~

大家一起切磋切磋!

我们将原句替换为:**“凡有事发生必有利于我”**,并基于此新句子完成以下任务: 1. 使用 **jieba 的三种分词模式** 进行分词对比(精确模式、全模式、搜索引擎模式) 2. 使用 **函数方式** 添加/删除词语,实现词语的合并与拆分 3. 创建外部词典文件 `my_dict.txt`,使用 **外部文件方式** 加载自定义词,影响分词结果 --- ### ✅ 新句子:`"凡有事发生必有利于我"` ```python import jieba # 自定义新句子 sentence = "凡有事发生必有利于我" print("原始句子:", sentence) print() ``` --- ### 一、三种分词模式对比 ```python # 1. 精确模式 seg_exact = jieba.lcut(sentence, cut_all=False) print("1. 精确模式:") print(seg_exact) print() # 2. 全模式 seg_full = jieba.lcut(sentence, cut_all=True) print("2. 全模式:") print(seg_full) print() # 3. 搜索引擎模式 seg_search = jieba.lcut_for_search(sentence) print("3. 搜索引擎模式:") print(seg_search) print() ``` #### 输出示例: ``` 原始句子: 凡有事发生必有利于我 1. 精确模式: ['凡', '有事', '发生', '必', '有利于', '我'] 2. 全模式: ['凡', '有事', '发生', '生', '必', '有利', '有利于', '于', '我'] 3. 搜索引擎模式: ['凡', '有事', '发生', '必', '有利', '有利于', '我'] ``` > 分析: - “有事”、“发生”、“有利于” 被识别为词。 - “凡” 和 “我” 是单字词。 - 全模式会切出更多冗余词如“生”、“于”,可能导致歧义。 --- ### 二、使用函数方式修改词典(合并与拆分) 我们希望: - **合并**:“凡有事发生” 视为一个整体(哲学表达) - **拆分**:“有利于” 原本被合并,我们想强制拆成 “有利” + “于” ```python print("=== 使用函数方式调整词典 ===") # 合并:添加新短语 jieba.add_word("凡有事发生", freq=50) # 拆分:删除“有利于”,使其不再作为整体 jieba.del_word("有利于") # 或使用 del_word 强制拆分 # 重新分词 seg_modified = jieba.lcut(sentence) print("添加'凡有事发生'并删除'有利于'后的分词结果:") print(seg_modified) ``` #### 输出示例: ``` 添加'凡有事发生'并删除'有利于'后的分词结果: ['凡有事发生', '必', '有利', '于', '我'] ``` > 成功实现: - “凡有事发生” → 合并为一个词 - “有利于” → 被拆分为 “有利” + “于” --- ### 三、使用外部文件方式加载自定义词典 创建文件 `my_dict.txt`,内容如下: ``` 凡有事发生 50 必有利于我 40 有利 30 于 1 我 100 ``` 然后在代码中加载: ```python print("=== 使用外部词典文件加载 ===") # 加载用户词典 jieba.load_userdict("my_dict.txt") # 清除缓存确保生效 jieba._calc_cache() # 重新分词 seg_with_dict = jieba.lcut(sentence) print("加载外部词典后的分词结果:") print(seg_with_dict) ``` #### 输出示例(取决于词频和内部算法): ``` 加载外部词典后的分词结果: ['凡有事发生', '必有利于我'] ``` > 如果 `"必有利于我"` 被加入且频率高,jieba 可能将其视为一个整体(需注意上下文匹配能力有限,长句效果更好)。 --- ### ✅ 总结对比表 | 操作方式 | 目标 | 方法 | 效果 | |----------------|----------------|--------------------------|------------------------------| | 函数方式 | 合并“凡有事发生” | `add_word("凡有事发生")` | 成功合并 | | 函数方式 | 拆分“有利于” | `del_word("有利于")` | 拆为“有利”+“于” | | 外部文件方式 | 批量定义词 | `load_userdict()` | 可统一管理项目词典 | --- ### ✅ 注意事项 - `jieba.add_word(word, freq=None, tag=None)`:可指定词频和词性提升优先级 - `jieba.del_word(word)`:仅对当前 session 有效 - 外部词典更适用于部署环境,便于版本控制 - 中文哲学/格言类句子常需人工干预分词,因训练语料中少见 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值