Loops for循环在Python中产生意外的结果

Loops for循环在Python中产生意外的结果,loops,python-3.7,Loops,Python 3.7,我正在努力处理这个“简单”的代码。我有以下对象列表: [ { "element_id": "6185316", "id": 123456, "inv_part_id": 2345250, "is_spare": true, "num_sets": 191, "part": { "external_ids": { "BrickOwl": [ "359273"

我正在努力处理这个“简单”的代码。我有以下对象列表:

[
{
    "element_id": "6185316",
    "id": 123456,
    "inv_part_id": 2345250,
    "is_spare": true,
    "num_sets": 191,
    "part": {
        "external_ids": {
            "BrickOwl": [
                "359273"
            ],
            "NODEX": [
                "17715",
                "19385"
            ]
        },
        "name": "Bar 3L",
        "part_cat_id": 32,
        "part_num": "27808",
        "print_of": null
    },
    "quantity": 1,
    "set_num": "71043-1"
},
{
    "element_id": "6185316",
    "id": 654321,
    "inv_part_id": 2345250,
    "is_spare": true,
    "num_sets": 191,
    "part": {
        "external_ids": {
            "BrickOwl": [
                "359273"
            ],
            "NODEX": [
                "17715",
                "19385"
            ]
        },
        "name": "Bar 3L",
        "part_cat_id": 32,
        "part_num": "5861",
        "print_of": null
    },
    "quantity": 1,
    "set_num": "71043-1"
}]
我的目标是将part_num(内部part对象)的值添加到列表中。为此,我使用以下方法:

    final = []
    count = 1
    for x in spf: 
        for y in x["part"]["part_num"]:
            final.append(y)
但它是附加每个字符,而不是添加完整的值:

['2', '7', '8', '0', '8', '5', '8', '6', '1']
预期产出应为:

['27808', '5861']

我做错了什么

您只需执行final.append(x[“part”][“part_num”])。不需要第二个for循环。@Kay您是对的。成功了!。谢谢