Odpowiedzi:
Jeśli potrzebujesz tylko słownika klucze 1
, 2
i 3
użycie: your_dict.keys()
.
Jeśli trzeba tylko wartości słownikowych -0.3246
, -0.9185
i -3985
użycie: your_dict.values()
.
Jeśli chcesz zarówno klucze, jak i wartości, użyj: your_dict.items()
który zwraca listę krotek [(key1, value1), (key2, value2), ...]
.
Jeśli chcesz wszystkie wartości, użyj tego:
dict_name_goes_here.values()
Jeśli chcesz wszystkie klucze, użyj tego:
dict_name_goes_here.keys()
JEŚLI chcesz wszystkie elementy (zarówno klucze, jak i wartości), użyłbym tego:
dict_name_goes_here.items()
Wywołaj values()
metodę na dykt.
Do zagnieżdżonych dykt, list dykt i dykt z list wyszczególnionych dykt, ... możesz użyć
def get_all_values(d):
if isinstance(d, dict):
for v in d.values():
yield from get_all_values(v)
elif isinstance(d, list):
for v in d:
yield from get_all_values(v)
else:
yield d
Przykład:
d = {'a': 1, 'b': {'c': 2, 'd': [3, 4]}, 'e': [{'f': 5}, {'g': 6}]}
list(get_all_values(d)) # returns [1, 2, 3, 4, 5, 6]
PS: Kocham yield
. ;-)
W przypadku Pythona 3 potrzebujesz:
list_of_dict_values = list(dict_name.values())
list()
jest potrzebna
Jeśli chcesz wszystkie wartości, użyj tego:
dict_name_goes_here.values()
d = <dict>
values = d.values()
Aby zobaczyć klucze:
for key in d.keys():
print(key)
Aby uzyskać wartości, do których odwołuje się każdy klucz:
for key in d.keys():
print(d[key])
Dodaj do listy:
for key in d.keys():
mylist.append(d[key])
Pythonic kacze typowanie powinno w zasadzie określać, co obiekt może zrobić, tj. Jego właściwości i metody. Patrząc na obiekt słownika, można spróbować zgadnąć, że ma co najmniej jedną z następujących metod : dict.keys()
lub dict.values()
. Powinieneś spróbować użyć tego podejścia do przyszłej pracy z językami programowania, których sprawdzanie typów odbywa się w czasie wykonywania, szczególnie z tymi, które mają charakter pisania kaczego.
list(your_dict.values())
do pobrania listy (a nie obiektu dict_values).