사전 Python 구문 및 예제 포함

⚡ 스마트 요약

사전 Python 딕셔너리는 중괄호로 묶인 키-값 쌍의 순서 없는 모음입니다. 아래 예제에서는 딕셔너리 생성, 요소 접근, 업데이트 및 삭제, 내장 메서드, 그리고 딕셔너리 키의 속성을 다룹니다.

  • 🗂️ 정의: 딕셔너리는 중괄호 안에 키-값 쌍으로 데이터를 저장합니다.
  • 🔑 키 : 키는 고유하고 변경 불가능해야 하지만, 값은 중복될 수 있습니다.
  • 업데이트 : 키에 값을 할당하여 항목을 추가하거나 변경할 수 있습니다.
  • 🗑️ 지우다: del 또는 pop() 메서드를 사용하여 항목을 삭제합니다.
  • 🛠️ 행동 양식: keys(), values(), items()와 같은 내장 메서드를 사용하면 딕셔너리를 다룰 수 있습니다.
  • 빠른 검색: 사전은 키를 통해 값에 빠르게 접근할 수 있도록 해줍니다.

사전 Python

사전이란 무엇입니까? Python?

A 사전 Python 키-값 쌍을 보관하는 정렬되지 않고 변경 가능한 데이터 값의 컬렉션입니다. 사전의 각 키-값 쌍은 키를 연관된 값에 매핑하여 더욱 최적화합니다. 파이썬의 사전은 중괄호({})를 사용하여 키-값 쌍의 쉼표로 구분된 목록을 묶어 선언합니다. Python 사전은 키와 값이라는 두 가지 요소로 분류됩니다.

  • 키는 단일 요소가 됩니다.
  • 값은 목록이나 목록 내의 목록, 숫자 등일 수 있습니다.

구문 Python 사전

Dict = { ' Tim': 18,  xyz,.. }

사전은 중괄호로 나열되어 있으며, 이 중괄호 안에 키와 값이 선언됩니다. 각 키는 콜론(:)으로 값과 구분되고, 쉼표는 각 요소를 구분합니다.

구문 Python 사전

사전 키의 속성

사전 키를 사용할 때 중요한 두 가지 사항이 있습니다.

  • 키당 XNUMX개 이상의 입력이 허용되지 않습니다. (중복 키는 허용되지 않습니다.)
  • 사전의 값은 어떤 유형이든 될 수 있지만 키는 숫자와 같이 변경 불가능해야 합니다. 튜플
  • 사전 키는 대소문자를 구분합니다. 동일한 키 이름이지만 대소문자가 다르면 사전에서 다른 키로 처리됩니다. Python 사전.

Python 2 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
print (Dict['Tiffany'])

Python 3 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
print((Dict['Tiffany']))
  • 코드에는 사전 이름이 "Dict"입니다.
  • 우리는 사전에 사람의 이름과 나이를 선언했습니다. 여기서 이름은 "Keys"이고 나이는 "값"입니다.
  • 이제 코드를 실행해 보세요
  • 사전에서 티파니의 나이를 검색합니다.

Python 사전 메소드

사전 복사 중

전체 사전을 새 사전에 복사할 수도 있습니다. 예를 들어, 여기서는 원래 사전을 새 사전 이름 "Boys" 및 "Girls"에 복사했습니다.

Python 2 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
studentX=Boys.copy()
studentY=Girls.copy()
print studentX
print studentY

Python 3 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
studentX=Boys.copy()
studentY=Girls.copy()
print(studentX)
print(studentY)
  • 남학생과 여학생의 이름과 나이가 함께 기재된 사전(Dict)을 보유하고 있습니다.
  • 하지만 우리는 소년 목록을 소녀 목록과 별도로 원하기 때문에 별도의 사전 이름인 "Boys"와 "Girls"에 소년과 소녀의 요소를 정의했습니다.
  • 이제 다시 새 사전 이름 "student X"와 "student Y"를 만들었습니다. 여기서 소년 사전의 모든 키와 값은 학생 X에 복사되고 소녀는 StudentY에 복사됩니다.
  • 이제 누가 남자이고 누가 여자인지 확인하기 위해 기본 사전(Dict)의 전체 목록을 조사할 필요가 없습니다. 남자 목록을 원하면 학생 X를 인쇄하고 여자 목록을 원하면 StudentY를 인쇄하면 됩니다.
  • 따라서 학생 X 및 학생 Y 사전을 실행하면 "소년"과 "소녀" 사전에 있는 모든 요소가 별도로 제공됩니다.

사전 업데이트

새 항목을 추가하거나 기존 항목에 키-값 쌍을 추가하거나 기존 항목을 삭제하여 사전을 업데이트할 수도 있습니다. 여기 예에서는 기존 사전에 "Sarah"라는 다른 이름을 추가하겠습니다.

Python 2 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Dict.update({"Sarah":9})
print Dict

Python 3 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Dict.update({"Sarah":9})
print(Dict)
  • 기존 사전 "Dict"에는 "Sarah"라는 이름이 없습니다.
  • 우리는 기존 사전에 Sarah를 추가하기 위해 Dict.update 메소드를 사용합니다.
  • 이제 코드를 실행하면 기존 사전에 Sarah가 추가됩니다.

사전에서 키 삭제

Python 사전은 사전 목록에서 모든 요소를 ​​삭제할 수 있는 자유를 제공합니다. 목록에 Charlie라는 이름이 없는 것을 원한다고 가정하면 다음 코드로 키 요소를 제거할 수 있습니다.

Python 2 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
del Dict ['Charlie']
print Dict

Python 3 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
del Dict ['Charlie']
print(Dict)

이 코드를 실행하면 Charlie 없이 사전 목록이 인쇄되어야 합니다.

  • 우리는 del Dict 코드를 사용했습니다.
  • 코드가 실행되면 기본 사전에서 Charlie가 삭제됩니다.

사전 항목() 메서드

items() 메소드는 사전에 있는 튜플 쌍(키, 값) 목록을 반환합니다.

Python 2 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
print "Students Name: %s" % Dict.items()

Python 3 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
print("Students Name: %s" % list(Dict.items()))
  • Dict에는 코드 items() 메소드를 사용합니다.
  • 코드가 실행되면 사전에서 항목(키 및 값) 목록을 반환합니다.

주어진 키가 이미 사전에 있는지 확인

특정 목록에 대해 우리 어린이 사전이 기본 사전에 존재하는지 여부도 확인할 수 있습니다. 여기에는 두 개의 하위 사전 "Boys"와 "Girls"가 있습니다. 이제 우리 사전 Boys가 기본 "Dict"에 있는지 확인하려고 합니다. 이를 위해 for 루프 메서드와 else if 메서드를 사용합니다.

Python 2 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
for key in Boys.keys():
    if key in Dict.keys():
        print True
    else:
        print False

Python 3 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
for key in list(Boys.keys()):
    if key in list(Dict.keys()):
        print(True)
    else:
        print(False)
  • The 포루프 코드에서는 Boys 키에 대한 기본 사전의 각 키를 확인합니다.
  • 기본 사전에 존재하는 경우 true를 인쇄하거나 그렇지 않으면 false를 인쇄해야 합니다.
  • 코드를 실행하면 "Boys" 사전에 세 개의 요소가 있으므로 "True"가 세 번 인쇄됩니다.
  • 따라서 우리의 주요 사전(Dict)에 “Boys”가 존재함을 나타냅니다.

사전 정렬

사전에서는 요소를 정렬할 수도 있습니다. 예를 들어, 사전의 요소 이름을 알파벳순으로 인쇄하려면 for 루프를 사용해야 합니다. 그에 따라 사전의 각 요소가 정렬됩니다.

Python 2 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
Students = Dict.keys()
Students.sort()
for S in Students:
      print":".join((S,str(Dict[S])))

Python 3 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
Students = list(Dict.keys())
Students.sort()
for S in Students:
      print(":".join((S,str(Dict[S]))))
  • 우리는 사전 “Dict”에 대한 변수 Students를 선언했습니다.
  • 그런 다음 Students.sort 코드를 사용하여 사전 내의 요소를 정렬합니다.
  • 그러나 사전의 각 요소를 정렬하려면 변수 S를 선언하여 for 루프를 실행합니다.
  • 이제 코드를 실행하면 for 루프가 사전의 각 요소를 호출하고 문자열과 값을 순서대로 인쇄합니다.

Python 사전 내장 기능

사전 len() 메서드

len() 함수는 사전에 있는 쌍의 수를 제공합니다.

예를 들어,

Python 2 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
print "Length : %d" % len (Dict)

Python 3 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
print("Length : %d" % len (Dict))

len(Dict) 함수가 실행되면 사전에 4개의 요소가 있으므로 "XNUMX"에 출력이 제공됩니다.

변수 유형

Python 예약 메모리 공간을 명시적으로 선언할 필요가 없습니다. 자동으로 발생합니다. 변수 “=” 등호에 할당된 값이 사용됩니다. 변수 유형을 판별하는 코드는 “%type(Dict)”입니다.

Python 2 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
print "variable Type: %s" %type (Dict)

Python 3 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
print("variable Type: %s" %type (Dict))
  • 변수 유형을 확인하려면 %type 코드를 사용하세요.
  • 코드가 실행되면 변수 유형이 사전임을 알려줍니다.

Python cmp() 메서드 나열

비교 메소드 cmp()는 다음에서 사용됩니다. Python 두 사전의 값과 키를 비교합니다. 메서드가 두 사전이 동일하면 0을 반환하고 dic1 > dict1이면 2을 반환하고 dict1 < dict1이면 -2을 반환합니다.

Python 2 예

Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
print cmp(Girls, Boys)

Python 3 예

cmp is not supported in Python 3
  • 우리는 "Boys"와 "Girls"라는 두 개의 사전 이름을 가지고 있습니다.
  • "cmp(Girls, Boys)" 코드에서 먼저 선언한 것이 무엇이든 사전 1로 간주됩니다. 우리의 경우 "Girls"를 먼저 선언했으므로 사전 1로 간주되고 boys는 사전 2로 간주됩니다.
  • 코드가 실행되면 -1이 인쇄됩니다. 이는 사전 1이 사전 2보다 작음을 나타냅니다.

사전 Str(dict)

Str() 메소드를 사용하면 사전을 인쇄 가능한 문자열 형식으로 만들 수 있습니다.

Python 2 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
print "printable string:%s" % str (Dict)

Python 3 예

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
print("printable string:%s" % str (Dict))
  • 코드 % str(Dict)을 사용하세요.
  • 사전 요소를 인쇄 가능한 문자열 형식으로 반환합니다.

모든 사전 메소드 목록은 다음과 같습니다.

방법 기술설명 통사론
부() 전체 사전을 새 사전에 복사 dict.복사()
최신 정보() 새 항목을 추가하거나 기존 항목에 키-값 쌍을 추가하거나 기존 항목을 삭제하여 사전을 업데이트합니다. 사전 업데이트([other])
항목 () 사전의 튜플 쌍(키, 값) 목록을 반환합니다. 사전.항목()
종류() 요소를 정렬할 수 있습니다. 사전.정렬()
len () 사전에 있는 쌍의 수를 제공합니다. 렌(딕셔너리)
cmp() 두 사전의 값과 키 비교 cmp(dict1, dict2)
Str() 사전을 인쇄 가능한 문자열 형식으로 만들기 Str(dict)

사전 병합

여기서는 두 개의 주어진 사전을 단일 사전으로 병합하는 방법을 이해합니다.

아래와 같이 두 개의 사전이 있습니다.

Dictionary1 : my_dict1

my_dict1 = {"username": "XYZ", "email": "xyz@gmail.com", "location":"Mumbai"}

사전 2 : my_dict2

my_dict2 = {"firstName" : "Nick", "lastName": "Price"}

my_dict1과 my_dict2 두 사전을 병합하고 이름이 my_dict인 단일 사전을 생성해 보겠습니다.

update() 메소드를 사용하여 두 개의 사전을 병합합니다.

update() 메소드는 한 사전을 다른 사전과 병합하는 데 도움이 됩니다. 이 예에서는 my_dict1을 my_dict2로 업데이트합니다. update() 메소드를 사용한 후 my_dict1은 아래와 같이 my_dict2의 내용을 갖게 됩니다.

my_dict1 = {"username": "XYZ", "email": "xyz@gmail.com", "location":"Mumbai"}

my_dict2 = {"firstName" : "Nick", "lastName": "Price"}

my_dict1.update(my_dict2)

print(my_dict1)

출력:

{'username': 'XYZ', 'email': 'xyz@gmail.com', 'location': 'Mumbai', 'firstName': 'Nick', 'lastName': 'Price'}

** 메소드를 사용하여 사전 병합(From Python 3.5 이후)

**는 Kwargs라고 불립니다. Python, 그리고 그것은 함께 작동합니다 Python 버전 3.5+. **를 사용하면 두 개의 사전을 병합할 수 있으며 병합된 사전을 반환합니다. 변수 앞에 **를 사용하면 변수가 모든 내용으로 대체됩니다.

다음은 **를 사용하여 두 디렉터리를 병합하는 실제 예제입니다.

my_dict1 = {"username": "XYZ", "email": "xyz@gmail.com", "location":"Mumbai"}

my_dict2 = {"firstName" : "Nick", "lastName": "Price"}

my_dict =  {**my_dict1, **my_dict2}

print(my_dict)

출력:

{'username': 'XYZ', 'email': 'xyz@gmail.com', 'location': 'Mumbai', 'firstName': 'Nick', 'lastName': 'Price'}

사전 회원 테스트

사전 내부에 키가 있는지 여부를 테스트할 수 있습니다. 이 테스트는 값이 아닌 사전의 키에 대해서만 수행할 수 있습니다. 회원 테스트는 다음을 사용하여 수행됩니다. in 예어. 다음을 사용하여 사전의 키를 확인할 때 in 키워드의 경우 표현식은 키가 있으면 true를 반환하고, 없으면 false를 반환합니다.

다음은 사전에 회원 가입 테스트를 보여주는 예입니다.

my_dict = {"username": "XYZ", "email": "xyz@gmail.com", "location":"Mumbai"}
print("email" in my_dict)
print("location" in my_dict)
print("test" in my_dict)

출력:

True
True
False

자주 묻는 질문

딕셔너리는 키를 통해 접근하는 키-값 쌍으로 데이터를 저장하는 반면, 리스트는 숫자 인덱스를 통해 접근하는 순서가 있는 항목을 저장합니다. 레이블이 있는 검색에는 딕셔너리를, 순서가 있는 시퀀스에는 리스트를 사용하세요.

아니요. 딕셔너리의 키는 고유해야 합니다. 기존 키에 값을 할당하면 새 값이 이전 값을 대체합니다. 하지만 값은 여러 키에 걸쳐 자유롭게 중복될 수 있습니다.

이후 Python 3.7 버전부터 딕셔너리는 삽입 순서를 유지하므로 항목은 추가한 순서대로 반환됩니다. 이전 버전에서는 이를 보장하지 않았으므로 이전 버전의 코드는 순서에 의존해서는 안 됩니다.

for 루프를 사용하세요.ping 딕셔너리를 직접 호출하면 키가 제공됩니다. 값을 읽으려면 `.values()`를 사용하고, 키-값 쌍을 함께 풀려면 `.items()`를 사용하세요. 예: `for key, value in my_dict.items()`.

딕셔너리 컴프리헨션은 {key: value for item in iterable} 구문을 사용하여 반복 가능한 객체로부터 한 줄로 딕셔너리를 구성합니다. 예를 들어, {x: x*x for x in range(5)}는 squares 딕셔너리를 구성합니다.

사전은 구성 설정, 하이퍼파라미터, 단어 수 및 기능 맵을 저장합니다.ping많은 라이브러리가 결과를 딕셔너리 형식으로 반환하고 JSON이 해당 딕셔너리에 직접 로드되므로 AI 및 머신러닝에서 레이블이 지정된 데이터를 구성하는 데 핵심적인 역할을 합니다.

네. AI 비서는 CSV 행, JSON 또는 일반 텍스트를 바로 사용할 수 있는 사전 코드로 변환하고 적절한 키 구조를 제안할 수 있습니다. 또한 사전 형식을 변경하고 키 오류를 신속하게 디버깅하는 데 도움을 줍니다.

네. GitHub Copilot은 주석이나 함수 이름에서 딕셔너리 리터럴, 컴프리헨션, 조회 기능을 생성할 수 있으며, 에이전트 도구는 반복되는 코드를 딕셔너리로 ​​리팩토링합니다. 제안된 키와 예외 처리에 대한 올바른 해석을 항상 검토하세요.

이 게시물을 요약하면 다음과 같습니다.