для l oop дает неожиданный результат в Python - PullRequest
0 голосов
/ 19 января 2020

Я борюсь с этим «простым» кодом. У меня есть следующий список объектов:

[
{
    "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']

Что я делаю не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...