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

Python如何校验JSON文件中多个值是否匹配搜索条件并提取对应数据

解决方案

逻辑说明

不要将整个player列表转为字符串做匹配,这种方式容错性低容易出现误判。正确逻辑是遍历player数组的每一条数据,同时校验name和rating两个字段是否和目标变量一致,匹配成功后直接提取对应的prices值即可。

完整可运行代码

import urllib, json


url = "https://exec85.pythonanywhere.com/static/data_xbox.JSON"
response = urllib.request.urlopen(url)
json_data_xbox = json.loads(response.read())


name_var = "Salah"
rating_var = "96"
target_price = None

# 遍历校验匹配
for player_item in json_data_xbox["player"]:
    if player_item["name"] == name_var and player_item["rating"] == rating_var:
        target_price = player_item["prices"]
        break

if target_price:
    print(f"匹配成功,对应价格为:{target_price}")
else:
    print("not matching")

注:你原代码中导入的requests和BeautifulSoup没有被使用,后续如果没有相关需求可以直接删除这两行导入语句。

扩展说明

如果业务场景中可能存在多条name+rating都相同的条目,只需要去掉上面代码里的break,用一个列表存储所有匹配到的prices值即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 02:30:01