본문 바로가기

파이썬

[python]#10 Python dictionary & error 유형

사전은 키-값 쌍을 저장할 수 있는 데이터 구조입니다. 각 키는 값과 연결되며 키를 사용하여 해당 값에 액세스할 수 있습니다. 사전은 키를 기반으로 값을 빠르게 조회하려는 데이터를 나타내는 데 유용합니다.

다음은 Python 사전의 몇 가지 예와 설명입니다.

 

Example 1: Simple dictionary

 

my_dict = {"apple": 2, "banana": 3, "orange": 4}

이 사전에는 세 개의 키-값 쌍이 있습니다. 키는 "apple", "banana" 및 "orange"이며 해당 값은 2, 3 및 4입니다. 대괄호를 사용하여 키와 연결된 값에 액세스할 수 있습니다.

>>> my_dict["apple"]
2
>>> my_dict["banana"]
3
>>> my_dict["orange"]
4

Example 2: 혼합 데이터 유형 dictionary

my_dict = {"name": "John", "age": 30, "is_student": True}

이 사전에는 세 개의 키-값 쌍이 있습니다. 여기서 키는 문자열이고 값은 문자열, 정수 및 부울과 같은 다양한 데이터 유형입니다. 이전과 같이 대괄호를 사용하여 값에 액세스할 수 있습니다.

>>> my_dict["name"]
'John'
>>> my_dict["age"]
30
>>> my_dict["is_student"]
True

Example 3: 중복 dictionary

my_dict = {"person1": {"name": "John", "age": 30}, "person2": {"name": "Alice", "age": 25}}

이 사전에는 두 개의 키-값 쌍이 있으며 각 값은 자체적으로 사전입니다. 먼저 키를 사용하여 내부 사전에 액세스한 다음 해당 키를 사용하여 해당 사전 내의 값에 액세스하여 중첩된 값에 액세스할 수 있습니다.

>>> my_dict["person1"]["name"]
'John'
>>> my_dict["person2"]["age"]
25

Example 4: dictionary methods

my_dict = {"apple": 2, "banana": 3, "orange": 4}

사전에는 몇 가지 유용한 방법이 있습니다. 예를 들어, keys 메소드를 사용하여 딕셔너리의 모든 키 목록을 얻을 수 있습니다

>>> my_dict.keys()
dict_keys(['apple', 'banana', 'orange'])

values ​​메서드를 사용하여 모든 값의 목록을 가져올 수도 있습니다.

>>> my_dict.values()
dict_values([2, 3, 4])

마지막으로 items 메서드를 사용하여 모든 키-값 쌍 목록을 얻을 수 있습니다.

>>> my_dict.items()
dict_items([('apple', 2), ('banana', 3), ('orange', 4)])

이것은 Python에서 사전을 사용할 수 있는 여러 가지 방법 중 몇 가지 예일 뿐입니다. 사전은 다양한 유형의 데이터를 나타내는 데 사용할 수 있는 다목적 데이터 구조입니다.

 

dictionary 에러유형

Example 1: Key error

my_dict = {"apple": 2, "banana": 3, "orange": 4}
print(my_dict["grape"])

이 코드는 "포도"가 사전의 키가 아니기 때문에 KeyError를 발생시킵니다. 이 오류를 방지하려면 키를 찾을 수 없는 경우 None을 반환하는 get 메서드를 사용할 수 있습니다.

my_dict = {"apple": 2, "banana": 3, "orange": 4}
print(my_dict.get("grape"))

Example 2: Unhashable type error

my_dict = {[1, 2]: "value"}

이 코드는 키 [1, 2]가 해시할 수 없는 변경 가능한 객체인 목록이기 때문에 TypeError를 발생시킵니다. 변경 가능한 객체를 사전의 키로 사용하려면 튜플과 같은 변경 불가능한 객체로 변환할 수 있습니다.

my_dict = {(1, 2): "value"}

Example 3: Mutable key error

my_dict = {[1, 2]: "value"}
my_dict[[3, 4]] = "value2"

이 코드는 키 [3, 4]가 사전에서 키로 사용할 수 없는 변경 가능한 객체인 목록이기 때문에 TypeError를 발생시킵니다. 변경 가능한 객체를 키로 사용하려면 예 2와 같이 튜플과 같은 변경 불가능한 객체로 변환하면 됩니다.

Example 4: Update method argument error

my_dict = {"apple": 2, "banana": 3, "orange": 4}
my_dict.update(apple=5, grape=6)

이 코드는 업데이트 메서드가 딕셔너리 또는 키-값 쌍의 이터러블을 인수로 사용하기 때문에 TypeError 를 발생시킵니다. 오류를 수정하려면 키-값 쌍을 사전으로 전달할 수 있습니다.

my_dict = {"apple": 2, "banana": 3, "orange": 4}
my_dict.update({"apple": 5, "grape": 6})

이것은 Python 사전으로 작업할 때 발생할 수 있는 오류의 몇 가지 예일 뿐입니다. 이러한 오류와 이를 방지하는 방법을 이해하면 보다 강력하고 오류 없는 코드를 작성할 수 있습니다.