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

9.13 同义词库实验:完善Python程序实现指定同义词查询

同义词文件处理程序完善

需求说明

有一组文本文件,每个文件以对应单词命名,文件内每行存储同一字母开头的同义词(空格分隔)。需完善Python程序实现以下功能:

  • 读取用户输入的目标单词(对应文件名,无需加.txt后缀)和指定字母
  • 打开对应文本文件,将内容存入预定义字典:字典以同义词的首字母为键,对应值为该首字母开头的同义词列表(所有字母统一为小写)
  • 输出所有以输入字母开头的同义词,每行一个;若无匹配项,输出提示信息

待完善的原始代码

synonyms = {}   # 定义字典

file_name = input() # 获取不带txt后缀的文件名
k = open(f'{file_name}.txt')# 打开文件
letter = input()# 获取要匹配的字母
contents = k.readlines() # 读取所有行并赋值给contents
word_list = [] # 定义列表

for line in contents: # 遍历contents中的每一行
    #word_list = lines.split()
    for word in line.split(): # 遍历每行分割后的每个单词
        word_list.append(word)  # 将每个单词添加到word_list列表  
       
for word in word_list:# 遍历word_list中的每个单词
    if (word[0] in synonyms.keys()):# 如果单词首字母已作为字典键存在
        synonyms [word[0]].append(word)# 将单词添加到对应键的列表中
        #print(synonyms, word[0])
    else:# 如果首字母未作为键存在
        synonyms [word[0]] = [word]# 以首字母为键创建新列表,存入当前单词
        print(synonyms)
       
       
# 开始使用字典
print(synonyms [word])

完善后的代码及说明

核心优化点

  1. 统一大小写处理:将所有单词和目标字母转为小写,避免大小写差异导致的匹配错误
  2. 简化逻辑:直接按行处理文件内容,无需额外维护word_list,提升运行效率
  3. 正确关联用户输入:使用用户指定的字母查询,而非循环变量的首字母
  4. 资源安全:用with语句自动管理文件,避免手动关闭遗漏导致的资源泄漏
  5. 异常场景处理:增加无匹配时的提示输出
  6. 清理冗余代码:移除不必要的字典打印语句

完善后的代码

synonyms = {}  # 定义存储同义词的字典,键为小写首字母,值为同义词列表

# 获取用户输入并预处理
file_name = input().strip()
target_letter = input().strip().lower()  # 统一转为小写,确保匹配一致性

# 自动管理文件资源
with open(f'{file_name}.txt', 'r', encoding='utf-8') as f:
    for line in f:
        # 分割每行单词并转为小写
        words = [word.lower() for word in line.strip().split()]
        for word in words:
            first_char = word[0]
            # 更新字典:存在键则追加,不存在则创建新列表
            if first_char in synonyms:
                synonyms[first_char].append(word)
            else:
                synonyms[first_char] = [word]

# 查询并输出结果
if target_letter in synonyms:
    for syn in synonyms[target_letter]:
        print(syn)
else:
    print(f"没有找到以字母'{target_letter}'开头的同义词")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 03:10:56