This commit is contained in:
2025-09-10 10:12:26 +08:00
parent 208ff53a64
commit aced5dd6be
2 changed files with 13 additions and 13 deletions

View File

@@ -78,25 +78,25 @@ def load_yunnan_area_data():
def query_area_info(query_str): def query_area_info(query_str):
""" """
查询行政区划信息 查询行政区划信息(优化版)
:param query_str: 简称或全称 :param query_str: 简称或全称
:return: 包含full_name和area_code的字典未找到返回None :return: 包含full_name和area_code的字典未找到返回None
""" """
# 加载数据
abbrev_map, fullname_map = load_jiancheng_data()
yunnan_area_map = load_yunnan_area_data()
# 1. 先查简称映射表 # 1. 先查简称映射表
if query_str in abbrev_map: if query_str in abbrev_map:
return abbrev_map[query_str] return abbrev_map[query_str]
# 2. 再查全称映射表 # 2. 直接查询完整行政区划数据(新增)
if query_str in fullname_map:
return fullname_map[query_str]
# 3. 最后查完整行政区划数据
if query_str in yunnan_area_map: if query_str in yunnan_area_map:
return yunnan_area_map[query_str] return yunnan_area_map[query_str]
# 未找到 # 3. 最后查全称映射表
if query_str in fullname_map:
return fullname_map[query_str]
# 4. 尝试模糊匹配(新增)
for name, info in yunnan_area_map.items():
if query_str in name or name in query_str:
return info
return None return None