티스토리 뷰
Stack Overflow에 자주 검색, 등록되는 문제들과 제가 개발 중 찾아 본 문제들 중에서 나중에도 찾아 볼 것 같은 문제들을 정리하고 있습니다.
Stack Overflow에서 가장 먼저 확인하게 되는 가장 높은 점수를 받은 Solution과 현 시점에 도움이 될 수 있는 가장 최근에 업데이트(최소 점수 확보)된 Solution을 각각 정리하였습니다.
아래 word cloud를 통해 이번 포스팅의 주요 키워드를 미리 확인하세요.
Return a default value if a dictionary key is not available
딕셔너리 키를 사용할 수 없는 경우 기본값 반환
문제 내용
I need a way to get a dictionary value if its key exists, or simply return None
, if it does not.
키가 있으면 딕셔너리 값을 가져오거나 없으면 None을 반환하는 방법이 필요합니다.
However, Python raises a KeyError
exception if you search for a key that does not exist. I know that I can check for the key, but I am looking for something more explicit. Is there a way to just return None
if the key does not exist?
그러나 존재하지 않는 키를 검색하면 Python에서 KeyError 예외가 발생합니다. 키를 확인할 수 있다는 것을 알고 있지만 좀 더 명확한 것을 찾고 있습니다. 키가 존재하지 않는 경우 None을 반환하는 방법이 있습니까?
높은 점수를 받은 Solution
You can use dict.get()
dict.get()을 사용할 수 있습니다.
value = d.get(key)
which will return None
if key is not in d
. You can also provide a different default value that will be returned instead of None
:
키가 d에 없으면 None을 반환합니다. None 대신 반환 될 다른 기본값을 제공할 수도 있습니다.
value = d.get(key, "empty")
가장 최근 달린 Solution
A one line solution would be:
단일 라인 솔루션은 다음과 같습니다.
item['key'] if 'key' in item else None
This is useful when trying to add dictionary values to a new list and want to provide a default:
이는 새 리스트에 사전 값을 추가하고 기본 값을 제공하려는 경우에 유용합니다.
eg.
예를 들면
row = [item['key'] if 'key' in item else 'default_value']
출처 : https://stackoverflow.com/questions/6130768/return-a-default-value-if-a-dictionary-key-is-not-available
'개발 > 파이썬' 카테고리의 다른 글
데이터프레임 인덱스를 열로 변환하기 (0) | 2022.12.18 |
---|---|
데이터프레임에서 SQL의 'in', 'not in'처럼 필터링하기 (0) | 2022.12.18 |
데이터프레임 행 순서 무작위로 섞기 (0) | 2022.12.17 |
특정 키만 포함하도록 딕셔너리를 필터링하기 (0) | 2022.12.17 |
효율적인 딕셔너리 검색 방법 (0) | 2022.12.17 |