때로는 Python 사전에서 특정 기준에 따라 사전의 특정 키를 필터링해야 할 수도 있습니다. 이 기사에서는 Python 사전에서 키를 필터링하는 방법을 살펴봅니다.
for 및 in
이 접근 방식에서는 필터링할 키 값을 목록에 넣습니다. 그런 다음 목록의 각 요소를 반복하고 주어진 사전에 존재하는지 확인합니다. 사전에서 찾은 이러한 값을 포함하는 결과 사전을 만듭니다.
예
dictA= {'Mon':'Phy','Tue':'chem','Wed':'Math','Thu':'Bio'} key_list = ['Tue','Thu'] print("Given Dictionary:\n",dictA) print("Keys for filter:\n",key_list) res = [dictA[i] for i in key_list if i in dictA] print("Dictionary with filtered keys:\n",res)
출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
Given Dictionary: {'Mon': 'Phy', 'Tue': 'chem', 'Wed': 'Math', 'Thu': 'Bio'} Keys for filter: ['Tue', 'Thu'] Dictionary with filtered keys: ['chem', 'Bio']
교차로 있음
우리는 주어진 사전과 목록 사이의 공통 요소를 찾기 위해 교집합을 사용합니다. 그런 다음 set 함수를 적용하여 고유한 요소를 가져오고 결과를 목록으로 변환합니다.
예
dictA= {'Mon':'Phy','Tue':'chem','Wed':'Math','Thu':'Bio'} key_list = ['Tue','Thu'] print("Given Dictionary:\n",dictA) print("Keys for filter:\n",key_list) temp = list(set(key_list).intersection(dictA)) res = [dictA[i] for i in temp] print("Dictionary with filtered keys:\n",res)
출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
Given Dictionary: {'Mon': 'Phy', 'Tue': 'chem', 'Wed': 'Math', 'Thu': 'Bio'} Keys for filter: ['Tue', 'Thu'] Dictionary with filtered keys: ['chem', 'Bio']