파이썬 사전(Dictionary)

2021. 8. 22. 14:50·Python/Syntax

사전(Dictionary)

  • key와 value의 쌍으로 구성된다.

  • 중괄호로 묶는다.

    {
      키1:값1,
      키2:값2,
      ...
    }
  • 키를 통해 값을 반환받을 수 있다.

    dic = { 'boy': '소년', 'school': '학교', 'book':'책' }
    print(dic['boy'])
    print(dic['book'])
    
    ''' stdout
    소년
    책
    '''
  • 존재하지 않는 키를 입력하면 예외가 발생한다.

    dic = { 'boy': '소년', 'school': '학교', 'book':'책'}
    print(dic.get('boy'))
    print(dic.get('girl'))
    print(dic.get('girl', '사전에 없는 단어입니다.'))
    
    ''' stdout
    소년
    None
    사전에 없는 단어입니다.
    '''

메서드

메서드 설명
사전[키] 키의 값을 반환, 없으면 예외 발생
.get(키) 키에 대한 값을 반환하고, 존재하지 않는 키에 대해서는 None이나 두 번째 인자 반환
.keys() 키 목록 리턴
.values() 값 목록 리턴
.items() (키, 값) 튜플 목록 리턴
del 사전[키] 기존 엔트리 삭제
list(사전) 사전의 키들만 리스트로 변환하여 리턴
.update(사전2) 사전2를 원본에 추가한다. 중복된 키는 업데이트한다.
  • 예시

    dic = { 'boy': '소년', 'school': '학교', 'book':'책'}
    dic['boy'] = '남자아이' # 기존값 수정
    dic['girl'] = '소녀' # 새로운 엔트리 추가
    del dic['book'] # 기존 엔트리 삭제
    print(dic)
    
    ''' stdout
    {'boy': '남자아이', 'school': '학교', 'girl': '소녀'}
    '''
  • keys, values, items 메서드를 통해 반환받은 값은 따로 형변환을 해야 적당히 사용할 수 있다.

    dic = { 'boy': '소년', 'school': '학교', 'book':'책'}
    print(dic.keys())
    print(dic.values())
    print(dic.items())
    
    ''' stdout
    dict_keys(['boy', 'school', 'book'])
    dict_values(['소년', '학교', '책'])
    dict_items([('boy', '소년'), ('school', '학교'), ('book', '책')])
    '''
  • 다른 콜렉션을 사전으로 형변환할 수 있다.

    li = [
        ['boy', '소년'],
        ['school', '학교'],
        ['teacher', '선생님']
    ]
    dic = dict(li)
    print(dic)
    
    ''' stdout
    {'boy': '소년', 'school': '학교', 'teacher': '선생님'}
    '''
저작자표시 (새창열림)

'Python > Syntax' 카테고리의 다른 글

파이썬 컬렉션 관리  (0) 2021.08.24
파이썬 집합(Set)  (0) 2021.08.22
파이썬 튜플(Tuple)  (0) 2021.08.22
파이썬 리스트(List)  (0) 2021.08.22
파이썬 함수  (0) 2021.08.22
'Python/Syntax' 카테고리의 다른 글
  • 파이썬 컬렉션 관리
  • 파이썬 집합(Set)
  • 파이썬 튜플(Tuple)
  • 파이썬 리스트(List)
Caniro
Caniro
  • Caniro
    Minimalism
    Caniro
  • 전체
    오늘
    어제
    • 분류 전체보기 (317)
      • Algorithm (13)
        • 알기 쉬운 알고리즘 (10)
        • Search (1)
        • Sort (2)
      • Arduino (0)
      • C++ (185)
        • Class (46)
        • Exception (6)
        • Library (51)
        • Overloading (10)
        • SmartPointer (5)
        • Syntax (33)
        • TBC++ (23)
        • Templates (9)
        • VisualStudio (2)
      • Embedded (1)
      • Git (4)
      • Java (5)
      • Linux (16)
        • Error (1)
        • Linux Structure (11)
      • MacOS (7)
      • OS (1)
        • Concurrency (1)
      • Python (21)
        • Class (1)
        • Function (2)
        • Syntax (17)
      • Raspberrypi (9)
      • Review (1)
      • Utility (12)
        • VSCode (5)
        • VirtualBox (3)
      • Web (8)
        • Nginx (1)
        • React (3)
        • Django (1)
      • Windows (20)
        • Registry (3)
        • WSL (1)
        • DeviceDriver (6)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    EXCLUDE
    제외
    Solaris 10
    알림
    스프링
    java
    Windows 11
    mspaint
    그림판
    Workspace
    dism
    맥북 카카오톡 알림 안뜸
    SunOS 5.1
    unix
    스프링 프레임워크 핵심 기술
    로지텍 마우스 제스처
    windows
    윈도우
    vscode
    백기선
    MacOS
    시스템 복구
    spring
    citrix workspace
    KakaoTalk
    SFC
    logi options
    윈도우 명령어
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Caniro
파이썬 사전(Dictionary)
상단으로

티스토리툴바