Python – Nazwa klucza w słowniku na podstawie wartości

Można tego dokonać na przykładowo dwóch przedstawionych poniżej sposobach. Różnica polega na kolejności elementów w słowniku. W pierwszym przypadku kluczami są imiona a w drugim przypadku kluczami są płci.

def plec_1(imie):
    ludzie = {
        ('Jan', 'Marek', 'Krzysztof', 'Michał', 'Bogdan'): 'Mężczyźni',
        ('Anna', 'Beata', 'Zosia'): 'Kobiety',
    }
    return [plec for imiona, plec in ludzie.items() if imie in imiona][0]


def plec_2(imie):
    ludzie = {
        'Mężczyźni': ('Jan', 'Marek', 'Krzysztof', 'Michał', 'Bogdan'),
        'Kobiety': ('Anna', 'Beata', 'Zosia'),
    }

    return [plec for plec, imiona in ludzie.items() if imie in imiona][0]


if __name__ == "__main__":
    imiona = ('Jan', 'Marek', 'Krzysztof', 'Michał', 'Bogdan', 'Anna', 'Beata', 'Zosia')

    for imie in imiona:
        print(imie, plec_1(imie))
        print(imie, plec_2(imie))

Leave a Reply

Your email address will not be published. Required fields are marked *