Python에서 KeyError는 무엇입니까? 사전 및 처리



이 기사는 사전에서 Python의 KeyError를 해결하는 방법에 대한 상세하고 포괄적 인 지식을 제공합니다.

KeyError에 대해 알아보기 전에 , 파이썬에서 사전이 어떻게 설정되었는지 아는 것이 중요합니다. 이 기사에서는 다음 사항에 대해 설명합니다.

파이썬 사전

그만큼 Python의 개념은 맵과 같은 데이터 값을 저장 한 임의의 값 모음입니다. 단일 값만 요소로 보유하는 다른 데이터 유형과는 다릅니다. 키 : 값 쌍을 보유합니다.





Python의 KeyError

키 값은 더 효율적입니다. 콜론은 키와 값 쌍을 구분하고 '쉼표'는 각 키를 구분합니다. 파이썬의이 사전은 일반 사전과 유사하게 작동합니다. 각 키는 고유해야하며 문자열, 정수 및 튜플과 같은 변경 불가능한 데이터 유형이어야하지만 키-값은 반복 될 수 있으며 모든 유형이 허용됩니다. 숫자를 나타내는 문자열 인 키가있을 수 있으며 그 반대의 경우도 마찬가지입니다.



아래 코딩 된 예제를 통해 사전이 어떻게 작동하는지 살펴 보겠습니다.

# 빈 사전 만들기 Dict = {} print ( 'Null dict :') print (Dict) # 정수 키로 사전 만들기 Dict = {1 : 'Fun', 2 : 'And', 3 : 'Frolic'} print ( 'nDictionary with the use of Integer Keys :') print (Dict) # 혼합 키로 사전 만들기 Dict = { 'Name': 'Arun', 1 : [12, 23, 34, 45]} print ( 'nDictionary with the 혼합 키 사용 : ') print (Dict) # dict () 메서드로 사전 만들기 Dict = dict ({1 :'German ', 2 :'language ', 3 :'is fun '}) print ('nDictionary with dict () : ') print (Dict) # 각 항목을 쌍으로하는 사전 Dict = dict ([(1,'Hello '), (2,'Bye ')]) print ('nDictionary with each 한 쌍으로 항목 : ') print (Dict)

Python의 KeyError

파이썬의 사전이 무엇인지, 그리고 어떻게 작동하는지 명확하기 때문입니다. 이제 주요 오류가 무엇인지 살펴 보겠습니다. Python의 KeyError는 사전에없는 키에 액세스하려고 할 때 발생합니다.



매핑 논리는 한 데이터 집합을 중요한 다른 데이터 집합에 매핑하는 데이터 구조입니다. 따라서 매핑에 액세스했지만 찾을 수 없을 때 발생하는 오류입니다. 찾고있는 키가 메모리에서 발견되지 않기 때문에 의미 론적 버그가 언급되는 조회 오류에 익숙합니다. 이것은 아래 코드에서 더 잘 설명 될 수 있습니다.

예제와 함께 pl SQL 자습서

여기서는 사전에없는 'D'라는 키에 액세스하려고합니다. 따라서 예외를 발견하자마자 오류가 발생합니다. 그러나 올바르게 인쇄 된 사전에있는 나머지 키에는 해당하는 정확한 값이 있습니다.

// ages = { 'A': 30, 'B': 28, 'C': 33} print (ages [ 'A']) print (ages [ 'B']) print (ages [ 'C']) print (ages [ 'D']) //

Python에서 KeyError에 대한 메커니즘 처리

KeyError가 발생하는 사람은 누구나 책임감있는 방식으로 처리 할 수 ​​있습니다. 특정 프로그램에 대한 가능한 모든 입력을 고려하고 불안정한 항목을 성공적으로 처리하는 것이 그의 기술입니다.

사용 사례에 따라 이러한 솔루션 중 일부는 더 좋을 수도 있고 원하는 정확한 솔루션이 아닐 수도 있습니다. 그럼에도 불구하고 궁극적 인 목표는 예기치 않은 주요 오류 예외가 발생하지 않도록하는 것입니다.

자체 코드의 사전에서 오류가 발생하면 .get ()을 사용하여 지정된 키 또는 기본값에서 값을 추출 할 수 있습니다. 샘플을 살펴 보겠습니다.

// 과일 목록 및 가격. while (1) : fruits = { 'Apple': 300, 'Papaya': 128, 'Kiwi': 233} fruit = input ( 'Get price for :') fruit1 = fruits.get (fruit) if fruit1 : print ( f '{fruit}는 {fruit1} 루피입니다.') else : print (f '{fruit}의 비용은 알 수 없습니다.')

KeyError에 대한 일반적인 솔루션

일반적인 해결책은 항상 try-except 블록을 사용하여 적절한 코드를 올리고 백업 솔루션을 제공함으로써 이러한 문제를 해결할 수 있다는 것입니다. 더 명확하게하려면 아래 코드를 확인하세요.

// while (1) : ages = { 'Jophi': 12, 'Rao': 20, 'Irvin': 16} person = input ( 'Get age for :') try : print (f '{person} is { ages [person]} 세. ') except KeyError : print (f'{person} 's age is unknown.') //

이것으로 파이썬 기사의이 KeyError의 끝입니다. 이 기사가 Python의 KeyError 예외와 발생 방법에 대한 정보가 되었기를 바랍니다. 또한 문제가 자체 코드의 사전 키 조회 인 경우 사전에서 직접 키에 액세스하는 것에서 기본 반환 값이있는 .get () 메서드를 사용하는 것으로 전환 할 수 있다는 사실을 알 수 있습니다.

자체 코드에서 문제가 발생하지 않는 경우 코드 흐름을 더 잘 제어하기 위해 try-except 블록을 사용합니다.

다양한 응용 프로그램과 함께 Python에 대한 심층적 인 지식을 얻으려면 다음을 수행 할 수 있습니다. 연중 무휴 지원 및 평생 액세스가 가능한 라이브 온라인 교육.

질문이 있으십니까? 'Python의 KeyError'의 주석 섹션에 언급하면 ​​다시 연락 드리겠습니다.