LINUX.ORG.RU

История изменений

Исправление uwuwuu, (текущая версия) :

в [тут хотел матом выругаться чтобы было созвучно с ширину]:

def get_parents(d: dict, k: int) -> list[str]:
    return (
        [] if d[k]["parent"] is None else get_parents(d, d[k]["parent"])
    ) + [d[k]["name"]]


d = {
    1: {"name": "Земля", "parent": None},
    2: {"name": "Евразия", "parent": 1},
    3: {"name": "Китай", "parent": 2},
    4: {"name": "Пекин", "parent": 3},
    5: {"name": "Австралия", "parent": 1},
    6: {"name": "Сидней", "parent": 5},
}


print(*get_parents(d, 4), sep=" -> ")
# Земля -> Евразия -> Китай -> Пекин

Исходная версия uwuwuu, :

в [тут хотел матом выругаться чтобы было созвучно с ширину]:

def get_parents(d: dict, k: int) -> list[str]:
    return (
        [] if k in d and d[k]["parent"] is None else get_parents(d, d[k]["parent"])
    ) + [d[k]["name"]]


d = {
    1: {"name": "Земля", "parent": None},
    2: {"name": "Евразия", "parent": 1},
    3: {"name": "Китай", "parent": 2},
    4: {"name": "Пекин", "parent": 3},
    5: {"name": "Австралия", "parent": 1},
    6: {"name": "Сидней", "parent": 5},
}


print(*get_parents(d, 4), sep=" -> ")
# Земля -> Евразия -> Китай -> Пекин