python - 如何只打印 JSON 对象的一部分数据?
问题描述
我调用一个 API,我得到如下数据:
{"states": [{"state_id": 1, "state_name": "Andaman and Nicobar Islands"},
{"state_id": 2, "state_name": "Andhra Pradesh"},
{"state_id": 3, "state_name": "Arunachal Pradesh"},
{"state_id": 4, "state_name": "Assam"}], "ttl": 24}
我只想要州名,所以我喜欢这样:
certificate = requests.get("https://cdn-api.co-vin.in/api/v2/admin/location/states")
datafrom = certificate.json()
print(datafrom["state_name"])
但它会显示一个错误
KeyError: 'state_name
如何仅在python中打印州名?
解决方案
因为您获取的数据具有以下格式:stringKey: listValue
,并且在列表中,您有每个字典,因此您需要访问值列表中字典的键。
>>> [d['state_name'] for d in datafrom['states']]
['Andaman and Nicobar Islands', 'Andhra Pradesh', 'Arunachal Pradesh', 'Assam']
推荐阅读
- python - 将 x 轴刻度标签格式化为接缝,如默认的熊猫图
- python - 在 Pandas 中计算基于过去值的乘积而不循环的值
- mysql - MYSQL 加入最近的记录并相乘
- javascript - 如何使用 javascript 验证用户输入
- swift - 如何防止新用户登录,直到他们在firebase swift中验证他们的电子邮件?
- scala - Scala:使用 immutable.Map 不需要导入?
- php - 根据成员和一年中的月份映射表格的好方法
- angular - 如何将科尔多瓦项目连接到数据库?
- docker - 干净地删除 NPM 安装的可执行文件
- css - Wordpress 固定标题在移动滚动上消失