如何用Python列表与字典高效存储SQL表并实现ID+年份查询
高效实现方案:字典嵌套结构
用字典嵌套的方式存储数据是最高效的选择,因为字典的键查找是O(1)时间复杂度,不需要遍历整个数据集,比单纯用列表遍历的效率高得多。
具体实现逻辑
- 数据结构设计:外层字典以用户ID为键,每个ID对应一个内层字典,内层字典以年份为键,值为该年份的具体信息。
- 获取用户输入:请求用户输入目标ID和年份。
- 直接查询:通过双层键值对直接定位所需信息,无需遍历整个数据集。
代码示例
# 模拟从SQL表获取的数据,组织成嵌套字典结构 user_data = { "001": { 2022: "2022年ID001的信息:年度消费总额12000元", 2023: "2023年ID001的信息:年度消费总额15000元" }, "002": { 2022: "2022年ID002的信息:年度消费总额8000元", 2023: "2023年ID002的信息:年度消费总额9500元" } } # 获取用户输入 target_id = input("输入你的ID:") target_year = int(input("输入年份:")) # 查询并输出结果 if target_id in user_data and target_year in user_data[target_id]: print(user_data[target_id][target_year]) else: print(f"未找到ID {target_id} 在 {target_year} 年的信息")
方案优势
- 避免遍历操作,数据量越大,效率优势越明显;
- 结构清晰,新增或修改数据时只需直接操作对应键值对,维护成本低。
内容的提问来源于stack exchange,提问作者John Johnson
相关产品推荐
相关产品推荐

