Python 사전: 알아야 할 모든 것 [예제 포함]

게시 됨: 2020-04-14

Python으로 작업하는 경우 목록, 문자열 및 튜플에 대해 들어봤을 것입니다. 오늘 우리는 파이썬의 또 다른 중요한 요소인 사전에 대해 이야기할 것입니다. 이 게시물을 다 읽고 나면 Python 사전, 만드는 방법 및 사용 방법에 대해 비교적 잘 이해하게 될 것입니다.

목차

파이썬 사전이란 무엇입니까?

Python에서 사전은 일반적으로 연관 배열로 알려진 데이터 구조의 구현입니다. 여기에는 정리되지 않은 데이터 값 모음(예: 지도)이 포함됩니다. 그러나 단일 값만 요소로 포함하는 다른 데이터 유형과 달리 사전에 저장된 데이터 값은 키:값 쌍을 보유합니다. 이것은 사전을 최적화하는 데 도움이 됩니다. 각 키: 값 쌍은 해당 값과 연결된 고유 키를 매핑합니다.

Python 사전에서 키는 고유하지만 값은 고유할 수도 있고 그렇지 않을 수도 있습니다. 키는 변경할 수 없는 데이터 유형(문자열, 숫자 및 튜플)이어야 하지만 값은 모든 유형이 될 수 있습니다. 또한 Python 사전에서 키는 대소문자를 구분합니다. 따라서 이름은 같지만 대소문자가 다른 키는 다르게 처리됩니다.

자세히 알아보기: Python 데이터 유형

사전 대 목록

Python에서 사전과 목록은 유사점과 차이점을 모두 공유합니다. 사전과 목록이 공유하는 일반적인 특성은 다음과 같습니다.

  • 그들은 변경 가능합니다.
  • 그들은 역동적입니다.
  • 중첩될 수 있습니다. 목록에는 다른 목록이 포함될 수 있고 사전에는 다른 사전이 포함될 수 있습니다. 또한 목록은 사전을 포함할 수 있으며 그 반대의 경우도 마찬가지입니다.

사전과 목록의 주요 차이점은 목록 요소는 인덱싱을 통해(목록에서의 위치 기반) 액세스할 수 있지만 사전 요소는 키를 통해 액세스할 수 있다는 것입니다.

파이썬 사전 – 메서드

이제 우리는 파이썬 사전에서 가장 일반적으로 사용되는 몇 가지 방법에 대해 논의할 것입니다.

  • copy( ) – 사전의 얕은 복사본을 반환합니다.
  • clear( ) – 사전에서 모든 항목을 제거합니다.
  • type( ) – 전달된 변수의 유형을 반환합니다.
  • pop( ) – 키가 제공된 후 사전에서 항목을 제거하고 반환합니다.
  • popitem( ) – 임의의 항목(키, 값)을 제거하고 반환합니다. 또한 사전이 비어 있으면 KeyError를 발생시킵니다.
  • get( ) – 키 값에 액세스하는 데 사용됩니다.
  • items( ) – 사전 항목(키, 값)의 새 보기를 반환합니다.
  • str( ) – 사전의 인쇄 가능한 문자열 표현을 생성합니다.
  • pop(key[,d]) – key가 있는 항목을 제거하고 값을 반환하고 key가 없으면 d 를 반환합니다 . 그러나 d 가 제공되지 않고 키를 찾을 수 없으면 KeyError 를 반환합니다 .
  • get(key[,d]) – key의 값을 반환합니다. 키가 존재하지 않으면 d 를 반환합니다 (기본값은 None ).
  • fromkeys(seq[, v])seq 의 키와 v 값이 동일한 새 사전을 반환합니다 (기본값은 None ).
  • update([other])기존 키를 덮어써서 다른 키/값 쌍으로 사전을 업데이트합니다 .

사전을 만드는 방법?

쉼표로 구분된 키-값 쌍 목록을 중괄호 { }로 묶어 Python 사전을 만들 수 있습니다. 콜론 ":"은 각 키를 연결된 값과 구분합니다.

d = {

<키>: <값>,

<키>: <값>,

.

.

.

<키>: <값>

}

내장 함수 dict() 를 사용하여 다음과 같이 사전을 만들 수도 있습니다.

# 빈 사전

my_dict = {}

# 정수 키가 있는 사전

my_dict = {1: '사과', 2: '공'}

# 혼합 키가 있는 사전

my_dict = {'이름': '요한', 1: [2, 4, 3]}

# dict() 사용

my_dict = dict({1:'사과', 2:'공'})

# 각 항목을 쌍으로 갖는 시퀀스에서

my_dict = dict([(1,'사과'), (2,'공')])

사전에서 요소에 액세스하는 방법은 무엇입니까?

사전에서 요소에 액세스하려면 해당 키 이름을 참조해야 합니다. get() 메서드를 사용 하여 항목을 검색하거나 대괄호 [ ] 안에 키 이름을 언급할 수 있습니다. 사전에서 키를 찾을 수 없으면 get() 메서드는 KeyError 대신 None을 반환합니다.

다음은 사전에서 요소에 액세스하는 데 사용되는 코드의 예입니다.

#!/usr/bin/python

dict = {'이름': '자라', '나이': 7, '클래스': '첫 번째'}

인쇄 “dict['이름']: “, dict['이름']

"dict['나이'] 인쇄: ", dict['나이']

사전에 요소를 추가하거나 변경하는 방법은 무엇입니까?

Python 사전은 변경 가능하므로 요소를 추가하거나 사전에 포함된 기존 항목의 값을 변경할 수도 있습니다. 요소는 여러 가지 방법으로 사전에 추가할 수 있습니다. 그러나 키와 함께 값을 정의하여 사전에 한 번에 하나의 값을 추가할 수 있습니다.

예를 들어 dict[키] = '값'입니다. 사전에 있는 기존 값을 업데이트하려면 내장된 update( ) 메서드 를 사용해야 합니다 . 값이 이미 존재하는 경우 사전에 값을 추가하는 동안 값이 업데이트되지 않으면 값이 있는 새 키가 사전에 추가된다는 점을 기억해야 합니다.

my_dict = {'이름':'잭', '나이': 26}

# 업데이트 값

my_dict['나이'] = 27

#출력: {'나이': 27, '이름': '잭'}

인쇄(my_dict)

# 아이템 추가

my_dict['주소'] = '시내'

# 출력: {'address': 'Downtown', 'age': 27, 'name': 'Jack'}

인쇄(my_dict)

사전에서 요소를 제거하거나 삭제하는 방법은 무엇입니까?

사전에서 항목을 제거하거나 삭제하려면 pop( ) 메서드를 사용할 수 있습니다. 제공된 ket으로 특정 항목을 제거하고 값을 반환합니다. popitem() 메서드를 사용하여 사전에서 임의의 요소(키 및 값)를 삭제하고 반환 할 수도 있습니다 .

한 번에 모든 항목을 삭제하려면 clear( ) 메서드를 사용할 수 있습니다. del 키워드를 사용하여 개별 항목을 제거하거나 del dict( ) 메서드를 사용하여 전체 사전 자체를 삭제할 수도 있습니다.

del dict( ) 메서드를 사용하는 예:

#!/usr/bin/python

dict = {'이름': '자라', '나이': 7, '클래스': '첫 번째'}

del dict['이름']; # 'Name' 키가 있는 항목 제거

dict.clear(); # dict의 모든 항목을 제거합니다.

델 딕트 ; # 사전 전체 삭제

"dict['나이'] 인쇄: ", dict['나이']

인쇄 “dict['학교']: “, dict['학교']

또한 배우십시오: 인도의 Python 개발자 급여

사전을 반복하는 방법?

Python 사전에서 for 루프를 사용하여 반복할 수 있습니다. 사전을 반복할 때 사전의 는 반환 값입니다.

사전을 반복하는 예는 다음과 같습니다.

thisdict의 x에 대해:

인쇄(x)

읽기: 가장 중요한 Python 함수

사전에 키가 있는지 확인하는 방법은 무엇입니까?

" in " 키워드를 사용하여 다음과 같이 사전에 특정 키가 있는지 확인할 수 있습니다.

thisdict = {

"브랜드": "페라리",

"모델": "데이톤",

"연도": "1968"

}

thisdict의 "모델"인 경우:

print("예, '모델'은 thisdict 사전의 키 중 하나입니다.")

사전의 길이를 결정하는 방법은 무엇입니까?

다음과 같이 len() 메서드 를 사용하여 사전의 길이를 설정할 수 있습니다 .

인쇄(len(thisdict))

사전을 복사하는 방법?

내장된 copy( ) 메소드 를 사용하여 사전을 복사할 수 있습니다 . 그러나 dict2 = dict1 입력하여 사전을 복사할 수는 없습니다. dict2dict1 에 대한 참조일 뿐입니다 .

다음은 copy( ) 메서드 를 사용하는 예 입니다.

thisdict = {

"브랜드": "포드",

"모델": "머스탱",

"년": 1964

}

mydict = thisdict.copy()

인쇄(mydict)

파이썬 사전: 이해력

Python에서 사전 이해는 iterable에서 새 사전을 만드는 간단하고 깔끔한 방법입니다. 중괄호 { } 안의 for 문이 뒤따르는 표현식 쌍(키: 값)으로 구성됩니다. 사전 이해는 여러 for 또는 if 문을 포함할 수 있습니다.

다음은 각 항목이 숫자와 해당 제곱의 쌍인 사전을 만드는 예입니다.

제곱 = {x: x*x for x in range(6)}

# 출력: {0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25}

인쇄(사각형)

더 읽어보기: Python 데이터 시각화 라이브러리

마무리

이것이 기본적으로 - 파이썬 사전에 대해 알아야 할 모든 기본 지식입니다!

Python, 데이터 과학에 대한 모든 것에 대해 배우고 싶다면 실무 전문가를 위해 만들어졌으며 10개 이상의 사례 연구 및 프로젝트, 실용적인 실습 워크샵, 업계 전문가와의 멘토링, 1-on을 제공하는 upGrad의 데이터 과학 인증 과정을 확인하십시오. -1 업계 멘토, 400시간 이상의 학습 및 최고의 기업에서의 취업 지원.

Python에서 사전이 필요한 이유는 무엇입니까?

데이터 값의 정렬되지 않은 컬렉션은 Python 사전입니다. 파이썬에서는 지도처럼 데이터 값을 저장하기 위해 사전이 필요합니다. 다른 모든 데이터 유형에서는 단일 값만 요소로 보유할 수 있습니다. 그러나 사전은 키:값 쌍을 보유할 수 있습니다. 이 쌍은 사전의 기능을 조금 더 최적화합니다.

Python에서 사전을 만들려면 요소를 모두 '쉼표'로 구분하여 중괄호 안에 배치하기만 하면 됩니다. 사전의 값은 반복 및 복제할 수 있지만 사전의 키를 반복할 수는 없습니다. 사전의 키는 대소문자를 구분하므로 이름은 같지만 대소문자가 다른 두 개의 키라도 다르게 처리됩니다.

파이썬 사전에 무엇을 저장할 수 있습니까?

사전은 고유 키의 도움으로 데이터를 검색하기 위해 Python에서 사용됩니다. 파이썬 변수에 저장할 수 있는 모든 것은 파이썬 사전에 저장할 수 있습니다. 목록을 만들어 하나의 사전을 다른 사전에 중첩할 수도 있습니다. 대조적으로, 키는 변경 불가능해야 합니다.

특정 값을 저장하는 키를 호출하여 저장된 값을 쉽게 검색할 수 있습니다. 반환된 목록을 변경하면 사전에도 영향을 미칩니다. 사전에 저장된 값과 검색된 목록이 동일한 객체라는 것을 이해해야 합니다.

Hashtable과 Dictionary는 어떻게 다른가요?

Hashtable은 일반이 아닌 컬렉션이고 Dictionary는 데이터 값의 일반 컬렉션입니다. 동일한 데이터 유형과 다른 데이터 유형의 키-값 쌍을 저장할 수 있지만 사전에는 동일한 데이터 유형 키-값 쌍만 저장할 수 있습니다.

Hashtable에는 boxing과 unboxing이 있기 때문에 Dictionary에 비해 데이터를 가져오는 과정이 느리다. Hashtable에 유지되는 순서는 없지만 사전에 저장된 값의 유지되는 순서를 항상 볼 수 있습니다.