Python에서 KeyError 0 해결
-
Python의
KeyError 0
예외 -
Python에서
try-except
블록을 사용하여KeyError 0
해결 -
dict.get()
을 사용하여 Python에서KeyError 0
해결 -
if-else
를 사용하여 Python에서KeyError 0
해결
모든 프로그래밍 언어에는 많은 오류가 발생합니다. 일부는 컴파일 타임에, 일부는 런타임에 발생합니다.
KeyError
는 코드 구문이 올바른 런타임 오류이지만 코드 실행 중에 오류가 발생합니다.
Python의 KeyError 0
예외
KeyError 0
은 우리가 액세스하려고 하는 매핑 키 0이 정의되지 않은 경우 Python의 런타임에서 발생합니다. 매핑 키는 KeyError 0
예외를 발생시킵니다.
맵은 콜론 :
으로 한 값을 다른 값으로 매핑하는 일종의 데이터 구조입니다. 사전은 가장 일반적인 매핑 유형입니다.
아래 예에서는 해당 학생의 이름이 있는 세 개의 키만 사전에 정의되어 있습니다. 사전의 다른 키에 액세스하려고 하면 KeyError
가 발생합니다.
예제 코드:
# Python 3.x
dict = {1: "kelvin", 2: "Ron", 3: "James"}
print(dict[0])
출력:
#Python 3.x
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
<ipython-input-1-f0366e7afb22> in <module>()
1 dict = {1: 'kelvin', 2:'Ron' , 3:'James'}
----> 2 print(dict[0])
KeyError: 0
여기서 사전에서 키 0
에 액세스하면 키 0
이 없기 때문에 KeyError 0
이 생성됩니다.
Python에서 KeyError 0
을 해결하는 방법에는 여러 가지가 있습니다. 다음은 설명과 코드가 포함된 몇 가지 방법입니다.
Python에서 try-except
블록을 사용하여 KeyError 0
해결
이 예에서 0
은 dict에 정의되어 있지 않지만 try-except
블록이 처리하기 때문에 KeyError 0
예외가 발생하지 않습니다. 오류 대신 예외 블록에 명령문을 인쇄합니다.
예제 코드:
# Python 3.x
dict = {3: "Kelvin", 5: "James", 6: "Danial"}
try:
print(dict[0])
except KeyError:
print("key not present in the dictionary")
출력:
#Python 3.x
key not present in the dictionary
dict.get()
을 사용하여 Python에서 KeyError 0
해결
get()
메서드는 KeyError
를 효과적으로 처리합니다. get()
을 사용하여 사전에 없는 키에 대한 기본값 또는 메시지를 반환할 수 있습니다.
이 예에서 키 0
은 존재하지 않으므로 기본 설정 문인 key 0 does not exist in dictionary
를 인쇄합니다. 기본값을 제공하지 않으면 이 메서드는 None
을 반환합니다.
예제 코드:
# Python 3.x
dict = {3: "Kelvin", 5: "James", 6: "Danial"}
print(dict.get(0, "key 0 does not exist in dictionary"))
출력:
#Python 3.x
key 0 does not Exist in dictionary
if-else
를 사용하여 Python에서 KeyError 0
해결
키 0
에 액세스하기 전에 예제와 같이 for
루프와 if-else
문을 사용하여 키가 사전에 있는지 여부를 확인할 수 있습니다. 키에 대해 사전의 값만 인쇄합니다.
예제 코드:
# Python 3.x
dict = {3: "Kelvin", 5: "James", 6: "Danial"}
for i in range(1, 7):
if i in dict:
print(dict[i])
else:
continue
출력:
#Python 3.x
Kelvin
James
Danial
I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.
LinkedIn관련 문장 - Python Error
- AttributeError 수정: Python에서 'generator' 객체에 'next' 속성이 없습니다.
- AttributeError 해결: 'list' 객체 속성 'append'는 읽기 전용입니다.
- AttributeError 해결: Python에서 'Nonetype' 객체에 'Group' 속성이 없습니다.
- AttributeError: 'Dict' 객체에 Python의 'Append' 속성이 없습니다.
- AttributeError: 'NoneType' 객체에 Python의 'Text' 속성이 없습니다.
- AttributeError: Int 객체에 속성이 없습니다.