[Python]Dict의 활용예제

자료구조 Dict의 활용에 대해 알아보자

예제1 : value 값의 합계구하기

d = {'a': 17,'b': 114,'c': 247, 'd': 362, 'e': 220, 'f': 728, 'g': -283, 'h': 922}

# 방법1
result = 0
for x in d.values():
    result += x
    
print(result)

# 방법2
print(sum(d.values()))


# 방법3
print(sum([d[key] for key in d.keys()]))

## 결과
2327
2327
2327

예제2 : 신규 Item을 추가하기

d = {'a': 'apple', 'b': 'grape'}

print(dir(d))
print()

# 방법1
d["c"] = 'banana'
d["d"] = 'kiwi'

# 방법2
d.update({'e': 'aaa', 'f': 'bbb'}) # 업데이트 명령어로 추가를 할 수도 있다.
d.update(g="cccc")

print(d)


## 결과
['__class__', '__class_getitem__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__ior__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__or__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__ror__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values']

{'a': 'apple', 'b': 'grape', 'c': 'banana', 'd': 'kiwi', 'e': 'aaa', 'f': 'bbb', 'g': 'cccc'}

예제3 : 필터링하기

# dictionary filtering 
d = {'a': 8, 'b': 33, 'c': 15, 'd': 26, 'e': 12, 'f': 120}

# 방법1
result = {}
for k, v in d.items():
    if v >= 25:
        result[k] = v
#         result.update({k: v})

print(result)

# 방법2
print({ k:v for k, v in d.items() if v >= 25 })

# 방법3
print(dict((k, v) for k, v in d.items() if v >= 25 ))

# 방법4
print(dict(filter(lambda v: v[1] >= 25, d.items())))


## 결과
{'b': 33, 'd': 26, 'f': 120}
{'b': 33, 'd': 26, 'f': 120}
{'b': 33, 'd': 26, 'f': 120}
{'b': 33, 'd': 26, 'f': 120}

You may also like...

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다