Przepraszam za to podstawowe pytanie, ale moje wyszukiwania na ten temat nie pokazują niczego innego, jak uzyskać klucz słownika na podstawie jego wartości, którego wolałbym nie używać, ponieważ po prostu chcę tekstu / nazwy klucza i martwię się tym wyszukiwaniem według wartości może skończyć się zwracaniem 2 lub więcej kluczy, jeśli słownik zawiera wiele wpisów ... próbuję to zrobić:
mydictionary={'keyname':'somevalue'}
for current in mydictionary:
result = mydictionary.(some_function_to_get_key_name)[current]
print result
"keyname"
Powodem tego jest to, że drukuję je do dokumentu i chcę przy tym użyć nazwy klucza i wartości
Widziałem metodę poniżej, ale wydaje się, że to po prostu zwraca wartość klucza
get(key[, default])
python
dictionary
key
Stóg
źródło
źródło
current
jest bieżącym kluczem, po prostu zróbprint current
Odpowiedzi:
Powinieneś iterować klucze:
źródło
for key in mydictionary:
print (f"key: {key}, value: {mydictionary[key]}")
Jeśli chcesz wydrukować klucz i wartość, użyj następujących poleceń:
źródło
W oparciu o powyższe wymaganie sugeruję:
źródło
my_dict.item()
lub rozumienie listy,keys = list(my_dict.keys)
ale na wypadek, gdyby ktoś chciał to zrobić w Pythonie 3: (wiersz 2)keys = sorted(my_dict.keys())
+ add () do wydrukowania.Jeśli słownik zawiera jedną parę w ten sposób:
wtedy możesz dostać jako
W przypadku języka Python 3.5 wykonaj następujące czynności:
źródło
TypeError: 'dict_items' object does not support indexing
key = list(d.keys())[0]
next()
jest lepsze zgodnie z: stackoverflow.com/a/27638751/1488445keys=[i for i in mydictionary.keys()]
lubkeys = list(mydictionary.keys())
źródło
Tak proste jak to:
Zmodyfikujesz słownik i powinieneś najpierw go skopiować
źródło
Możesz po prostu użyć tego,
*
który rozpakowuje klucze słownika. Przykład:źródło
Iterate over dictionary (i) zwróci klucz, a następnie użyje go (i), aby uzyskać wartość
źródło
Dla python 3 Jeśli chcesz uzyskać tylko klucze, użyj tego. Zamień print (klucz) na print (wartości), jeśli chcesz wartości.
źródło
Czasami robię to, że tworzę inny słownik, aby móc uzyskać dostęp do wszystkiego, co według mnie jest potrzebne jako ciąg. Następnie iteruję po wielu słownikach dopasowujących klucze, aby zbudować np. Tabelę z pierwszą kolumną jako opisem.
Możesz z łatwością zrobić ogromną liczbę słowników w celu dopasowania danych (podoba mi się to, że w słowniku zawsze możesz odnosić się do czegoś dobrze znanego jako nazwa klucza)
tak, używam słowników do przechowywania wyników funkcji, więc nie muszę uruchamiać tych funkcji za każdym razem, gdy wywołuję je tylko raz, a następnie uzyskuję dostęp do wyników w dowolnym momencie.
EDYCJA: w moim przykładzie nazwa klucza tak naprawdę nie ma znaczenia (osobiście lubię używać tych samych nazw kluczy, ponieważ łatwiej jest wybrać jedną wartość z dowolnego z moich pasujących słowników), po prostu upewnij się, że liczba kluczy w każdym słowniku jest to samo
źródło
Możesz to zrobić, rzutując klucze i wartości dict na listę. Można to również zrobić dla przedmiotów.
Przykład:
źródło
łatwo zmieniaj pozycję swoich kluczy i wartości, a następnie użyj wartości, aby uzyskać klucz, w słowniku klucze mogą mieć tę samą wartość, ale one (klucze) powinny być inne. na przykład, jeśli masz listę, a pierwsza jej wartość jest kluczem do Twojego problemu, a inne wartości są specyfikacjami pierwszej wartości:
dzięki tej pętli możesz łatwo zapisywać i wykorzystywać dane w Słowniku:
wtedy możesz znaleźć klucz (nazwę) na podstawie dowolnej wartości wejściowej.
źródło