python - 无法使用循环访问字典键,我收到 TypeError
问题描述
为了举例,我把它缩短了。
import json
info = '''
{
"people":
{
"rick":
{
"age": 24
}
}
}
'''
data = json.loads(info)
以下代码输出:rick(这是我所期望的)
for person in data["people"]:
print(person)
在下面的代码中,我期待输出:24
for person in data["people"]:
print(person["age"])
但相反我得到:TypeError:字符串索引必须是整数
据我了解,这意味着rick被转换为string,不再是字典,如果是这样,输出24的正确方法是什么?
谢谢
解决方案
你需要遍历values
你的内部字典。本身就是一本data["people"]
字典。
for person in data["people"].values():
print(person["age"])
# 24
推荐阅读
- amazon-web-services - 为什么我不能使用 VPC NACL 来加强安全性?
- javascript - 表单数据:使用选择选项中的值填充输入标签
- spring - 创建名为“amazonS3Client”的 bean 时出错:当前正在创建请求的 bean:是否存在无法解析的循环引用?
- c# - C# .NET Epplus - 查找具有特定名称的 excel 工作表,最好的方法来处理没有找到这样的工作表
- python - 在熊猫中,如何从单词列表或单词集中选择数据框中的短语?
- corda - 教程 - 你好,世界!Pt.2 问题
- android - 尝试将图像插入到 sqlite 数据库 API 21
- c++ - 为什么在创建矩阵时使用“** int A”而不是“int A”(c++)
- c - 我收到错误“未指定与字符串文字的比较结果(改用 strncmp)”
- python - 如何处理此类列表输入?