Python 3-사전
각 키는 콜론 (:)으로 값과 구분되며 항목은 쉼표로 구분되며 전체는 중괄호로 묶여 있습니다. 항목이없는 빈 사전은 {}와 같이 중괄호 두 개만 사용하여 작성됩니다.
키는 사전 내에서 고유하지만 값은 그렇지 않을 수 있습니다. 사전의 값은 모든 유형이 될 수 있지만 키는 문자열, 숫자 또는 튜플과 같은 변경 불가능한 데이터 유형이어야합니다.
사전의 값에 액세스
사전 요소에 액세스하려면 키와 함께 익숙한 대괄호를 사용하여 값을 얻을 수 있습니다. 다음은 간단한 예입니다.
#!/usr/bin/python3
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
print ("dict['Name']: ", dict['Name'])
print ("dict['Age']: ", dict['Age'])
위의 코드가 실행되면 다음과 같은 결과가 생성됩니다.
dict['Name']: Zara
dict['Age']: 7
딕셔너리의 일부가 아닌 키로 데이터 항목에 액세스하려고하면 다음과 같은 오류가 발생합니다.
#!/usr/bin/python3
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
print ("dict['Alice']: ", dict['Alice'])
위의 코드가 실행되면 다음과 같은 결과가 생성됩니다.
dict['Zara']:
Traceback (most recent call last):
File "test.py", line 4, in <module>
print "dict['Alice']: ", dict['Alice'];
KeyError: 'Alice'
사전 업데이트
아래에 제공된 간단한 예와 같이 새 항목 또는 키-값 쌍을 추가하거나 기존 항목을 수정하거나 기존 항목을 삭제하여 사전을 업데이트 할 수 있습니다.
#!/usr/bin/python3
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
dict['Age'] = 8; # update existing entry
dict['School'] = "DPS School" # Add new entry
print ("dict['Age']: ", dict['Age'])
print ("dict['School']: ", dict['School'])
위의 코드가 실행되면 다음과 같은 결과가 생성됩니다.
dict['Age']: 8
dict['School']: DPS School
사전 요소 삭제
개별 사전 요소를 제거하거나 사전의 전체 내용을 지울 수 있습니다. 한 번의 작업으로 전체 사전을 삭제할 수도 있습니다.
전체 사전을 명시 적으로 제거하려면 del성명서. 다음은 간단한 예입니다.
#!/usr/bin/python3
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
del dict['Name'] # remove entry with key 'Name'
dict.clear() # remove all entries in dict
del dict # delete entire dictionary
print ("dict['Age']: ", dict['Age'])
print ("dict['School']: ", dict['School'])
다음과 같은 결과가 생성됩니다.
예외가 발생합니다. del dict, 사전이 더 이상 존재하지 않습니다.
dict['Age']:
Traceback (most recent call last):
File "test.py", line 8, in <module>
print "dict['Age']: ", dict['Age'];
TypeError: 'type' object is unsubscriptable
Note − del () 메서드는 다음 섹션에서 설명합니다.
사전 키의 속성
사전 값에는 제한이 없습니다. 임의의 Python 객체, 표준 객체 또는 사용자 정의 객체 일 수 있습니다. 그러나 키도 마찬가지입니다.
사전 키에 대해 기억해야 할 두 가지 중요한 사항이 있습니다.
(a)키당 하나 이상의 항목은 허용되지 않습니다. 이는 중복 키가 허용되지 않음을 의미합니다. 할당 중에 중복 키가 발견되면 마지막 할당이 우선합니다. 예를 들면-
#!/usr/bin/python3
dict = {'Name': 'Zara', 'Age': 7, 'Name': 'Manni'}
print ("dict['Name']: ", dict['Name'])
위의 코드가 실행되면 다음과 같은 결과가 생성됩니다.
dict['Name']: Manni
(b)키는 변경 불가능해야합니다. 즉, 문자열, 숫자 또는 튜플을 사전 키로 사용할 수 있지만 [ 'key']와 같은 것은 허용되지 않습니다. 다음은 간단한 예입니다.
#!/usr/bin/python3
dict = {['Name']: 'Zara', 'Age': 7}
print ("dict['Name']: ", dict['Name'])
위의 코드가 실행되면 다음과 같은 결과가 생성됩니다.
Traceback (most recent call last):
File "test.py", line 3, in <module>
dict = {['Name']: 'Zara', 'Age': 7}
TypeError: list objects are unhashable
내장 사전 함수 및 방법
파이썬은 다음과 같은 사전 함수를 포함합니다-
Sr. 아니. | 기능 및 설명 |
---|---|
1 | cmp (dict1, dict2) 더 이상 Python 3에서 사용할 수 없습니다. |
2 | len (dict) 사전의 전체 길이를 제공합니다. 이것은 사전의 항목 수와 같습니다. |
삼 | str (dict) 사전의 인쇄 가능한 문자열 표현을 생성합니다. |
4 | 유형 (변수) 전달 된 변수의 유형을 반환합니다. 전달 된 변수가 사전이면 사전 유형을 반환합니다. |
파이썬은 다음과 같은 사전 메소드를 포함합니다-
Sr. 아니. | 방법 및 설명 |
---|---|
1 | dict.clear () 사전 dict의 모든 요소를 제거합니다. |
2 | dict.copy () 사전 dict 의 얕은 사본을 반환합니다. |
삼 | dict.fromkeys () 서열에서 키와 값이 새 사전 만들기 설정 에 값을 . |
4 | dict.get (키, 기본값 = 없음) 를 들어 키 키 키가 아닌 사전의 경우 값이나 기본값을 반환 |
5 | dict.has_key (키) 제거 되었습니다. 대신 in 작업을 사용하십시오. |
6 | dict.items () dict 의 (키, 값) 튜플 쌍 목록을 반환합니다. |
7 | dict.keys () 사전 사전의 키 목록을 반환합니다. |
8 | dict.setdefault (키, 기본값 = 없음) get ()과 유사하지만 키 가 dict에없는 경우 dict [key] = default로 설정됩니다. |
9 | dict.update (dict2) 사전 dict2 의 키-값 쌍을 dict에 추가합니다. |
10 | dict.values () 사전 dict 값 목록을 반환 합니다. |