You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python新手求助:基于单词后缀构建符合条件的字典

解决你的后缀映射字典需求

嘿,你好呀!我看你当前的代码是在统计每个单词的出现次数,但这和你想要的「按3字母后缀分组单词」的需求不匹配~ 咱们来调整代码实现你的目标:

步骤说明

  1. 首先,我们需要用defaultdict(list)来创建一个字典,这样每个后缀键对应的是单词列表,而不是计数。
  2. 遍历你的stimuli_words列表,给每个单词提取最后3个字符作为后缀,把单词添加到对应后缀的列表中。
  3. 最后过滤掉那些单词数量≤40的后缀,得到你需要的最终字典。

完整代码示例

from collections import defaultdict

# 你的无重复全小写单词列表
stimuli_words = ["going", "hiring", "driving", ...]  # 替换为你的实际列表

# 第一步:构建后缀到单词列表的映射
suffix_to_words = defaultdict(list)
for word in stimuli_words:
    # 仅处理长度≥3的单词,确保能提取3字母后缀
    if len(word) >= 3:
        suffix = word[-3:]
        suffix_to_words[suffix].append(word)

# 第二步:过滤出单词数量超过40的后缀
filtered_suffix_dict = {
    suffix: words for suffix, words in suffix_to_words.items()
    if len(words) > 40
}

# 查看最终结果
print(filtered_suffix_dict)

代码细节解释

  • defaultdict(list):自动为每个新后缀创建空列表,不用手动判断键是否存在,写起来更简洁。
  • word[-3:]:Python字符串切片语法,直接取最后3个字符作为后缀,是处理这类需求的常用技巧。
  • 字典推导式:快速筛选出符合条件的条目,比传统循环遍历的写法更高效易读。

如果你的列表里有长度小于3的单词,可以根据需求调整——比如跳过这类单词,或者把短单词的完整字符串作为后缀,修改循环里的判断逻辑就行啦。

内容的提问来源于stack exchange,提问作者user9172872

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:06:13