[Python] λ”•μ…”λ„ˆλ¦¬(Dictionary)

2025. 3. 19. 23:58Β·Language/Python

λ³Έ ν¬μŠ€νŒ…μ€ 학ꡐ μˆ˜μ—…μ—μ„œ 닀룬 파이썬 문법 뢀뢄을 μ •λ¦¬ν•΄λ‘κ³ μž λ‚¨κΈ°λŠ” ν¬μŠ€νŒ…μ΄λ‹€.

(ν•΄λ‹Ή μˆ˜μ—…μ€ '파이썬 도μž₯'κ³Ό '점프 투 파이썬'을 ꡐ재둜 문법 μˆ˜μ—…μ„ μ§„ν–‰)

λ”•μ…”λ„ˆλ¦¬

κΈ°λ³Έ 문법 및 μ„€λͺ…

  • νŒŒμ΄μ¬μ—μ„œλŠ” μ—°κ΄€λœ 값을 λ¬Άμ–΄μ„œ μ €μž₯ν•˜λŠ” μžλ£Œν˜•μœΌλ‘œ λ”•μ…”λ„ˆλ¦¬λ₯Ό 제곡
    • μžλ°”μŠ€ν¬λ¦½νŠΈ 객체 λ¦¬ν„°λŸ΄κ³Ό μœ μ‚¬ν•œ ν˜•νƒœ 
    • student = {'name': '홍길동', 'age': 20, 'grade': 'A'}
  • κ°’λ§ˆλ‹€ 이름을 λΆ™μ—¬ μ €μž₯ν•˜λŠ” 방식이닀.
  • μ€‘κ΄„ν˜Έ μ•ˆμ— ν‚€ κ°’ ν˜•μ‹μœΌλ‘œ μ €μž₯
  • 각 킀와 값은 ,(콀마)둜 ꡬ뢄
    • λ”•μ…”λ„ˆλ¦¬ = {ν‚€1:κ°’1, ν‚€2:κ°’2}
  • ν‚€λ₯Ό λ¨Όμ € μ§€μ •ν•˜κ³  :(콜둠)을 λΆ™μ—¬ 값을 ν‘œν˜„
  • ν‚€λŠ” 값을 ν•˜λ‚˜λ§Œ μ§€μ • κ°€λŠ₯ν•œ ν‚€-κ°’ 쌍(key-value pair) μΌλŒ€μΌ λŒ€μ‘μ΄λ‹€.

ν‚€ 이름이 μ€‘λ³΅λ˜λ©΄?

student = {'name': '홍길동', 'age': 20, 'grade': 'A', 'age': 21}
print(student)  # {'name': '홍길동', 'age': 21, 'grade': 'A'}
  • λ”•μ…”λ„ˆλ¦¬μ— 킀와 값을 μ €μž₯ν•  λ•Œ ν‚€κ°€ μ€‘λ³΅λ˜λ©΄ κ°€μž₯ 뒀에 μžˆλŠ” κ°’λ§Œ μ‚¬μš©
  • μ€‘λ³΅λ˜λŠ” ν‚€λŠ” μ €μž₯ν•˜μ§€ μ•ŠμŒ

ν‚€μ˜ μžλ£Œν˜•

  • λ”•μ…”λ„ˆλ¦¬μ˜ ν‚€λŠ” λ¬Έμžμ—΄ 뿐 μ•„λ‹ˆλΌ μ •μˆ˜, μ‹€μˆ˜, 뢈 λͺ¨λ‘ μ‚¬μš© κ°€λŠ₯ν•˜κ³  μžλ£Œν˜•μ„ μ„žμ–΄μ„œ μ‚¬μš©ν•΄λ„ λœλ‹€
    • μ€‘λ³΅λ˜μ§€ μ•Šκ³ , ν•˜λ‚˜μ˜ 값이라면 κ°€λŠ₯
    • κ·Έλž˜λ„ μ–΄μ§€κ°„ν•˜λ©΄ λ¬Έμžμ—΄ μ‚¬μš©
  • κ°’μ—λŠ” 리슀트, λ”•μ…”λ„ˆλ¦¬ 등을 포함할 μˆ˜λ„ μžˆλ‹€.
    • ν‚€μ—λŠ” λ¦¬μŠ€νŠΈμ™€ λ”•μ…”λ„ˆλ¦¬ μ‚¬μš© λΆˆκ°€
      student = {1: '홍길동', 2.5: 'μ΄μˆœμ‹ ', True: '강감찬'}
      print(student)  # {1: '강감찬', 2.5: 'μ΄μˆœμ‹ '}
      빈 λ”•μ…”λ„ˆλ¦¬ λ§Œλ“€κΈ°
  • λ”•μ…”λ„ˆλ¦¬ = {}
  • λ”•μ…”λ„ˆλ¦¬ = dict()
    d1 = {}
    d2 = dict()
    print(d1, d2)  # {} {}
  • dict둜 λ”•μ…”λ„ˆλ¦¬λ₯Ό λ§Œλ“€ 수 μžˆλ‹€.
    • λ”•μ…”λ„ˆλ¦¬ = dict(ν‚€1=κ°’1, ν‚€2=κ°’2)
    • 인수둜 리슀트, νŠœν”Œ, λ”•μ…”λ„ˆλ¦¬λ₯Ό 넣을 수 있음
      student = dict(name='홍길동', age=20)
      print(student)  # {'name': '홍길동', 'age': 20}
  • ν‚€=κ°’ ν˜•μ‹μœΌλ‘œ λ§Œλ“€ μˆ˜λ„ μžˆλŠ”λ° 이 λ•Œ 킀에 λ”°μ˜΄ν‘œλ₯Ό μ“°λ©΄ μ•ˆλœλ‹€
  • zip ν•¨μˆ˜λ₯Ό μ“Έ μˆ˜λ„ μžˆλ‹€.

λ”•μ…”λ„ˆλ¦¬ 킀에 μ ‘κ·Όν•˜μ—¬ κ°’ ν• λ‹Ή

  • 킀에 μ ‘κ·Όν•  λ•ŒλŠ” λ”•μ…”λ„ˆλ¦¬ 뒀에 λ₯Ό μ‚¬μš©ν•˜λ©° []μ•ˆμ— ν‚€λ₯Ό μ§€μ •ν•΄μ£Όλ©΄ 됨
  • 값을 ν• λ‹Ήν•  λ•Œμ—λŠ” []둜 μ ‘κ·Όν•œ λ’€ ν• λ‹Ήν•˜λ©΄ λœλ‹€.
    • λ”•μ…”λ„ˆλ¦¬μ— μ—†λŠ” 킀에 값을 ν• λ‹Ήν•˜λ©΄ ν•΄λ‹Ή ν‚€κ°€ μΆ”κ°€ 되고 값이 ν• λ‹Ήλœλ‹€
      student = {'name': '홍길동', 'age': 20}
      student['grade'] = 'A'
      print(student)  # {'name': '홍길동', 'age': 20, 'grade': 'A'}
  • μ—†λŠ” ν‚€μ—μ„œ 값을 κ°€μ Έμ˜€λ €κ³  ν•˜λ©΄ μ—λŸ¬ λ°œμƒ
    print('name' in student)  # True
    print('grade' in student)  # False

ν‚€κ°€ μžˆλŠ”μ§€ 확인

  • λ”•μ…”λ„ˆλ¦¬μ—μ„œ ν‚€κ°€ μžˆλŠ”μ§€ ν™•μΈν•˜λ €λ©΄ in μ—°μ‚°μž μ‚¬μš©
    • 있으면 True μ—†μœΌλ©΄ False λ°˜ν™˜
      print('name' in student)  # True
      print('grade' in student)  # False
  • len에 λ”•μ…”λ„ˆλ¦¬ λ³€μˆ˜λ₯Ό λ„£μ–΄μ„œ ν‚€μ˜ 개수λ₯Ό ꡬ해도 되고, len에 λ”•μ…”λ„ˆλ¦¬λ₯Ό κ·ΈλŒ€λ‘œ 넣어도 확인 κ°€λŠ₯

'Language > Python' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

[Python] 클래슀, 상속  (2) 2025.04.04
[Python] μ‹œν€€μŠ€ μžλ£Œν˜•(리슀트, νŠœν”Œ, range, λ¬Έμžμ—΄)  (1) 2025.03.19
[Python] λ°°μ—΄κ³Ό νŠœν”Œ(feat. FizzBuzz)  (1) 2025.03.11
[Python] 비ꡐ μ—°μ‚°μž, 논리 μ—°μ‚°μž  (0) 2025.03.11
[Python] λ³€μˆ˜μ™€ λ¬Έμžμ—΄ μž…μΆœλ ₯  (2) 2025.03.11
'Language/Python' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€
  • [Python] 클래슀, 상속
  • [Python] μ‹œν€€μŠ€ μžλ£Œν˜•(리슀트, νŠœν”Œ, range, λ¬Έμžμ—΄)
  • [Python] λ°°μ—΄κ³Ό νŠœν”Œ(feat. FizzBuzz)
  • [Python] 비ꡐ μ—°μ‚°μž, 논리 μ—°μ‚°μž
_루디_
_루디_
  • _루디_
    Rudy DevNote πŸ“˜
    _루디_
  • πŸ ν™ˆ ν™”λ©΄
    κΈ€μ“°κΈ° 관리
    • All (45)
      • Database (7)
        • λ°μ΄ν„°λ² μ΄μŠ€ 이둠 (7)
      • CodingTest (3)
        • Algorithm (2)
        • Data Structure (0)
        • Solving (0)
      • CS 지식 (9)
        • μ •λ³΄λ³΄ν˜Έλ‘  (6)
        • λ„€νŠΈμ›Œν¬ (3)
        • 객체 μ§€ν–₯ ν”„λ‘œκ·Έλž˜λ° (0)
      • Framework (4)
        • Node.js (1)
        • Nest.js (3)
        • Spring (0)
      • Design Pattern (1)
      • Language (8)
        • Java (0)
        • JavaScript (2)
        • TypeScript (0)
        • Python (6)
      • 인곡지λŠ₯(AI) (1)
        • λ¨Έμ‹ λŸ¬λ‹(ML) (1)
      • My Story (10)
        • 자격증 (2)
        • λŒ€νšŒ&ν”Œμ  ν›„κΈ° (3)
        • μš°μ•„ν•œν…Œν¬μ½”μŠ€ (5)
  • hELLOΒ· Designed Byμ •μƒμš°.v4.10.1
_루디_
[Python] λ”•μ…”λ„ˆλ¦¬(Dictionary)
μƒλ‹¨μœΌλ‘œ

ν‹°μŠ€ν† λ¦¬νˆ΄λ°”