development

파이썬의 사전에서 모든 값을 추출하려면 어떻게합니까?

big-blog 2020. 6. 10. 07:51
반응형

파이썬의 사전에서 모든 값을 추출하려면 어떻게합니까?


사전이 d = {1:-0.3246, 2:-0.9185, 3:-3985, ...}있습니다.

d목록 의 모든 값을 어떻게 추출 l합니까?


당신은 단지 사전에 키가 필요한 경우 1, 2그리고 3사용을 : your_dict.keys().

당신은 단지 사전 값이 필요한 경우 -0.3246, -0.9185그리고 -3985사용을 : your_dict.values().

키와 값을 모두 원하면 다음 your_dict.items()사용하십시오 [(key1, value1), (key2, value2), ...]. tuples 목록을 반환합니다 .


사용하다 values()

>>> d = {1:-0.3246, 2:-0.9185, 3:-3985}

>>> d.values()
<<< [-0.3246, -0.9185, -3985]

모든 값을 원하면 다음을 사용하십시오.

dict_name_goes_here.values()

모든 키를 원하면 다음을 사용하십시오.

dict_name_goes_here.keys()

모든 항목 (키와 값 모두)을 원한다면 다음을 사용하십시오.

dict_name_goes_here.items()

values()dict 에서 메소드를 호출하십시오 .


모든 값을 원하면 다음을 사용하십시오.

dict_name_goes_here.values()

d = <dict>
values = d.values()

키를 보려면

for key in d.keys():
    print(key)

각 키가 참조하는 값을 얻으려면

for key in d.keys():
    print(d[key])

목록에 추가하십시오.

for key in d.keys():
    mylist.append(d[key])

중첩 된 dicts, dicts 목록 및 나열된 dicts dict의 경우 다음을 사용할 수 있습니다.

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 

예를 들면 :

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 : 사랑 yield합니다. ;-)


파이썬 오리 타이핑은 원칙적으로 객체가 무엇을 할 수 있는지, 즉 속성과 메소드를 결정해야합니다. : 사전 객체 하나를보고는 적어도 다음 중 하나가 추측하려고 할 수 있습니다 dict.keys()또는 dict.values()방법을. 런타임에 유형 검사가 수행되는 프로그래밍 언어, 특히 오리 입력 특성이있는 프로그래밍 언어에 대한 향후 작업에이 방법을 사용해야합니다.


dictionary_name={key1:value1,key2:value2,key3:value3}
dictionary_name.values()

참고 URL : https://stackoverflow.com/questions/7002429/how-can-i-extract-all-values-from-a-dictionary-in-python

반응형