사전 Python 구문 및 예제 포함
사전이란 무엇입니까? Python?
A 사전 Python 키-값 쌍을 보관하는 정렬되지 않고 변경 가능한 데이터 값의 컬렉션입니다. 사전의 각 키-값 쌍은 키를 연관된 값에 매핑하여 더욱 최적화합니다. 파이썬의 사전은 중괄호({})를 사용하여 키-값 쌍의 쉼표로 구분된 목록을 묶어 선언합니다. Python 사전은 키와 값이라는 두 가지 요소로 분류됩니다.
- 키는 단일 요소가 됩니다.
- 값은 목록이나 목록 내의 목록, 숫자 등일 수 있습니다.
구문 Python 사전
Dict = { ' Tim': 18, xyz,.. }
사전은 중괄호로 나열되어 있으며, 이 중괄호 안에 키와 값이 선언됩니다. 각 키는 콜론(:)으로 값과 구분되고, 쉼표는 각 요소를 구분합니다.
사전 키의 속성
사전 키를 사용할 때 중요한 두 가지 사항이 있습니다.
- 키당 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 사전은 키와 값이라는 두 가지 요소로 정의됩니다.
- 사전은 특정 순서로 정보를 저장하지 않으므로 입력한 순서대로 정보를 가져오지 못할 수도 있습니다.
- 키는 단일 요소가 됩니다.
- 값은 목록이나 목록 내의 목록, 숫자 등일 수 있습니다.
- 키당 XNUMX개 이상의 입력이 허용되지 않습니다. (중복 키는 허용되지 않습니다.)
- 사전의 값은 어떤 유형이든 될 수 있지만, 키는 숫자, 튜플, 문자열과 같이 변경 불가능해야 합니다.
- 사전 키는 대소문자를 구분합니다. 동일한 키 이름이지만 대소문자가 다르면 사전에서 다른 키로 처리됩니다. Python 사전.