Python(json)如何将同名的每个键添加到列表中

标签 python json key cycle

我需要将键名和键龄中的每个值添加到列表中

但是在这段代码开始之后有:

for i in len(jsondata['name']): builtins.KeyError: 'name'

但是你看到我在第二个中有 "name": "husky","name": "shiba inu",。那么你会重写什么?

谢谢

import json

names=[]
ages=[] 


#f = open('jsondata.json')

with open('jsondata.json') as fp:
    jsondata = json.load(fp)


for i in len(jsondata['name']):
    names.add(jsondata['name'])

for i in len(jsondata['age']):
    ages.add(jsondata['age'])

f.close()

Json文件:

{
    "dogs": [
        {
            "name": "husky",
            "age": "12",
            "urls": [
                "https://www.dailypaws.com/dogs-puppies/dog-names/husky-names",
                "https://www.tonbridgehuskymalamutewalkinggroup.co.uk/"
            ]
        },
        {
            "name": "shiba inu",
            "age": "3",
            "urls": [
                "https://www.cryptoglobe.com/latest/2021/10/shiba-inu-shib-listed-on-trading-app-with-over-one-million-users/",
                "https://www.purina.co.uk/find-a-pet/dog-breeds/japanese-shibu-inu"
            ]
        }
    ]
}

最佳答案

for dog in jsondata["dogs"]:
    names.append(dog["name"])
    ages.append(dog["age"])

关于Python(json)如何将同名的每个键添加到列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69778973/

相关文章:

asp.net - 如何集成 ASP .Net Model View Presenter (MVP) 模式和标记为 [WebMethod] 的静态页面方法?

java - 当我通过 RestTemplate 上的 POST 发送请求数组时,我收到错误 400

php - array_diff 和重新编号数字键

python - 骰子计数器错误

python - 通过 readinto() 将二进制数据解析为 ctypes 结构对象

ruby-on-rails - 如何使用 Ruby on Rails 将 company.address.city 转换为对象

Ruby:重命名哈希数组中的键?

java swing 键绑定(bind) - 缺少释放键的操作

python - 使用python在OpenCV中进行透视校正

python - openpyxl KeyError 工作表 {0} 不存在