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

如何编写Python程序实现4个单词列表的匹配查询并输出对应组名?

修正后的代码实现单词分组查询功能

原代码存在几个核心问题:

  • 错误地将整个列表与输入字符串做相等判断,应该检查输入是否在列表内
  • 循环内的else会在每一次不匹配时都输出错误提示,逻辑混乱
  • break位置错误,会直接终止循环,导致仅检查第一个分组
  • 未实现输出对应组名的需求

以下是修正后的代码:

# 定义各组单词,同时关联组名
groups = {
    "group1": ["anbar","tamirgah kochak","ordogah jahangardi","zamin varzeshi","mohavate sazi","kargah kochak"],
    "group2": ["maskoni","small store","khabgah","mehmansara","asayeshgah","parking tabaghati","kodakestan","dabestan","rahnamaii","dabirstan","honarestan","salon varzesh"],
    "group3": ["daneshsara","fani herfei","daneshgah","namayeshgah","teather","cinema"],
    "group4": ["hospital","mokhaberat","metro","mosque","museum","bank","stadium","airport"]
}

project_type = input("chose project type: ")
found = False

# 遍历每个组名和对应的单词列表
for group_name, word_list in groups.items():
    if project_type in word_list:
        found = True
        project_area = int(input("enter the area m2 :"))
        price_per_m2 = int(input("enter price per m2 :"))
        print(f"{project_type} (属于{group_name}): {project_area * price_per_m2}$")
        break  # 找到后终止循环

if not found:
    print("输入的单词不在任何分组中,请重新输入")

改动说明:

  • 使用字典存储分组,直接关联组名和对应单词列表,更便于获取组名
  • 增加found标记,用于判断遍历结束后是否找到匹配项
  • 仅在找到匹配单词时才执行面积和价格计算,避免无效交互
  • 遍历结束后统一输出未找到的提示,避免多次错误输出
  • 修正了输入提示的拼写错误(inter改为enter)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 22:35:20