Python + JSON格式化(“list”对象没有属性“values”)

wz1wpwve  于 2022-12-25  发布在  Python
关注(0)|答案(1)|浏览(227)

我得到了以下错误。我确信这个错误是由于我的JSON格式。我应该如何格式化我的JSON文件?

Exception has occurred: AttributeError
'list' object has no attribute 'values'

错误发生在以下行

total_sites = len(custom_sites.values())

它试图执行的函数

def get_available_websites():
    string = []
    with open('settings.json') as available_file:
        for sites in json.load(available_file)['custom_sites']:
            string.append(sites + ", ")
    return (''.join(string))[:-2]

JSON文件

{
    "custom_sites": [
        "https://github.com",
        "https://test.com"
    ]
}

我尝试了JSON文件中的各种更改。交替使用[]和{}

elcex8rz

elcex8rz1#

custom_sites将是一个列表而不是一个dict,所以它不会有一个值属性。你可以只检查列表本身的长度。

import json

json_str = """{
    "custom_sites": [
        "https://github.com",
        "https://test.com"
    ]
}"""

custom_sites = json.loads(json_str)["custom_sites"]
total_sites = len(custom_sites)
print(f"{total_sites=}")
    • 输出**
total_sites=2

相关问题