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

如何在Python中从JSON提取单个值并传递给渲染模板

在Python中提取字典列表中的字段值(无需解析为JS对象)

没问题,这事儿在Python里完全不用碰JavaScript对象那套,直接用Python本身的列表和字典操作就能轻松搞定!

第一步:确认你的数据结构

你给出的示例其实是Python的列表嵌套字典(不是严格的JSON字符串,JSON要求用双引号),所以不需要额外解析,直接当作Python变量来操作就行:

# 假设你的results_activity是这样的
results_activity = [{'address': '123 Any Street', 'province': 'ON', 'postal_code': 'L1P 2X2', 'co': 'BURL'}]

第二步:提取单个字段值

因为数据是列表包裹的字典,先取列表里的第一个元素(索引为0),再通过键名提取对应的值:

# 先取出列表中的字典项(如果列表可能为空,记得加判断,后面会说)
location_info = results_activity[0]

# 逐个提取需要的字段
address = location_info['address']
province = location_info['province']
postal_code = location_info['postal_code']
co = location_info['co']

如果想更简洁,也可以一行直接提取:

address = results_activity[0]['address']
province = results_activity[0]['province']

第三步:安全处理(避免报错)

如果results_activity有可能是空列表,或者字典里某个键可能不存在,建议用get()方法来设置默认值,防止程序报错:

if results_activity:
    location_info = results_activity[0]
    # 用get()方法,第二个参数是键不存在时的默认值
    address = location_info.get('address', '未提供地址')
    province = location_info.get('province', '未提供省份')
    postal_code = location_info.get('postal_code', '未提供邮编')
    co = location_info.get('co', '未提供代码')
else:
    # 列表为空时的默认值
    address = province = postal_code = co = '无数据'

第四步:传递给渲染模板

不管你用的是Flask、Django还是其他模板引擎,直接把提取好的变量传进去就行。比如Flask里的写法:

from flask import render_template

# (前面的提取代码)
return render_template('your_page.html', 
                       address=address,
                       province=province,
                       postal_code=postal_code,
                       co=co)

这样在模板里就能直接用{{ address }}、{{ province }}这类变量来渲染内容啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 18:45:49