python - 访问列表中字典中的元素
问题描述
这段代码的目的是发送一个 http get 请求,我想从请求的结果中获取其中一个键的值。作为示例,我想获取“目标”的值,请参见下面的预期行为:
request = request.get(url,auth=(user,password))
all_results = request.text
print(all_results)
>>> {"thing":[{"thing1":1,"thing2":2,"thing3":3,"thing4":4,"thing5":5,"thing6":{"t1":0,"t2":2,"t3":0,"t4":0,"t5":0,},"target":"I WANT THIS"}],"l":{"m":1,"n":1,"o":0}}
x = all_results["thing"][0]["transactions"]
print(x)
>>> "I WANT THIS"
但是当我打印 x 时,我得到一个错误:
TypeError: string indices must be integers
解决方案
利用my_dict["things"][0]["target"]
完整代码:
mydict = {"things":
[
{
"thing1":"a",
"thing2":"b",
"thing3":{
"something1":"c",
"something2":"d"
},
"target":"I WANT THIS"
}
],
"somethingelse":"z"
}
x = mydict ["things"][0]["target"]
print(x)
>> I WANT THIS
推荐阅读
- python - 序列图变换 - Python SGT 多处理中的错误
- python - Seaborn Barplot 日期轴不可格式化
- ruby-on-rails - 您如何授权访问由控制器处理的页面,而没有使用 Cancancan 的相应模型?
- node.js - Node.js 未正确安装
- javascript - 如何将变量从 JS 输入传递到 HTML?
- ios - 使用 pushViewController 方法后,FirstViewController 的元素在 DetailViewController 中仍然可见
- java - Java Postfix 自增运算符,求值顺序
- sql - 两列的 DATEDIFF,但仅返回不到 1 年
- linux-kernel - 交叉编译内核和内核模块问题
- javascript - 在 TestCafe 中,有没有办法获取由 USER ROLE 功能设置的令牌?