5. [ํŒŒ์ด์ฌ] ๋”•์…”๋„ˆ๋ฆฌ

2026. 3. 6. 21:44ยทPython & SQL/Python Basics
๐Ÿ’ก ๋ณธ ํฌ์ŠคํŒ…์€ ์ˆ˜์—… ๋‚ด์šฉ, ๊ต์žฌ, ChatGPT๋ฅผ ์ฐธ๊ณ ํ•˜์—ฌ ์ •๋ฆฌํ•œ ํ•™์Šต ๊ธฐ๋ก์ž…๋‹ˆ๋‹ค.
๊ธ€๊ณผ ๊ทธ๋ฆผ ๋“ฑ ๋ชจ๋“  ์ฝ˜ํ…์ธ ์˜ ์ •๋ฆฌ ๋ฐ ์ž‘์„ฑ์€ ๋ณธ ๋ธ”๋กœ๊ทธ์—์„œ ์ง์ ‘ ์ œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

 

 

Python ๊ธฐ์ดˆ๋ถ€ํ„ฐ Streamlit ๋ฐ์ดํ„ฐ ์‹œ๊ฐํ™”๊นŒ์ง€ ์ •๋ฆฌํ•˜๋Š” ํ•™์Šต ๊ธฐ๋ก์ž…๋‹ˆ๋‹ค.

์ด ๊ธ€์€ '5. [ํŒŒ์ด์ฌ] ๋”•์…”๋„ˆ๋ฆฌ' ์ž…๋‹ˆ๋‹ค.

 

 

๋”•์…”๋„ˆ๋ฆฌ (Dictionary)

๋”•์…”๋„ˆ๋ฆฌ๋Š” key์™€ value ๊ตฌ์กฐ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ์ž๋ฃŒํ˜•์ด๋‹ค.

key → value

 

์˜ˆ๋ฅผ ๋“ค์–ด ํ•™์ƒ ์ ์ˆ˜๋ฅผ ์ €์žฅํ•  ๋•Œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

โœ”๏ธ ๋”•์…”๋„ˆ๋ฆฌ ์˜ˆ์ œ

scores = {
    "๊ตญ์–ด": 90,
    "์ˆ˜ํ•™": 85,
    "์˜์–ด": 95
}

print(scores)

 

 

๋”•์…”๋„ˆ๋ฆฌ ์ƒ์„ฑ ๋ฐฉ๋ฒ•

๋”•์…”๋„ˆ๋ฆฌ๋Š” ์—ฌ๋Ÿฌ ๋ฐฉ์‹์œผ๋กœ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.

 

โœ”๏ธ ๊ธฐ๋ณธ ์ƒ์„ฑ

person = {
    "name": "ํ™๊ธธ๋™",
    "age": 20,
    "city": "Seoul"
}

print(person)

 

โœ”๏ธ dict() ์ƒ์„ฑ

person = dict(name="ํ™๊ธธ๋™", age=20, city="Seoul")

print(person)

 

 

๋”•์…”๋„ˆ๋ฆฌ ๊ฐ’ ์ ‘๊ทผ

๋”•์…”๋„ˆ๋ฆฌ ๊ฐ’์€ 'key๋ฅผ ํ†ตํ•ด ์ ‘๊ทผ'ํ•œ๋‹ค.

 

โœ”๏ธ key ์ ‘๊ทผ

scores = {
    "๊ตญ์–ด": 90,
    "์ˆ˜ํ•™": 85
}

print(scores["๊ตญ์–ด"])

 

 

get() ๋ฉ”์†Œ๋“œ

์กด์žฌํ•˜์ง€ ์•Š๋Š” key๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” get()์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์•ˆ์ „ํ•˜๋‹ค.

 

โœ”๏ธ get() ์‚ฌ์šฉ

scores = {
    "๊ตญ์–ด": 90,
    "์ˆ˜ํ•™": 85
}

print(scores.get("ํ•œ๊ตญ์‚ฌ"))
print(scores.get("ํ•œ๊ตญ์‚ฌ", 0))

 

 

๋”•์…”๋„ˆ๋ฆฌ ๊ฐ’ ์ถ”๊ฐ€

๋”•์…”๋„ˆ๋ฆฌ๋Š” mutable ๊ฐ์ฒด์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

โœ”๏ธ ๊ฐ’ ์ถ”๊ฐ€

scores = {
    "๊ตญ์–ด": 90,
    "์ˆ˜ํ•™": 85
}

scores["์˜์–ด"] = 95

print(scores)

 

 

๋”•์…”๋„ˆ๋ฆฌ ๊ฐ’ ์ˆ˜์ •

โœ”๏ธ ๊ฐ’ ์ˆ˜์ •

scores["์ˆ˜ํ•™"] = 100

print(scores)

 

 

๋”•์…”๋„ˆ๋ฆฌ ์‚ญ์ œ

โœ”๏ธ ์‚ญ์ œ

del scores["๊ตญ์–ด"]

print(scores)

 

 

๋”•์…”๋„ˆ๋ฆฌ ์ฃผ์š” ๋ฉ”์†Œ๋“œ

โœ”๏ธ keys() : key๋งŒ ๋ถˆ๋Ÿฌ์˜จ๋‹ค

print(scores.keys())

 

โœ”๏ธ values() : ๊ฐ’๋งŒ ๋ถˆ๋Ÿฌ์˜จ๋‹ค

print(scores.values())

 

โœ”๏ธ items() : key์™€ value๋ฅผ ๋ชจ๋‘ ๋ถˆ๋Ÿฌ์˜จ๋‹ค

print(scores.items())

 

 

๋”•์…”๋„ˆ๋ฆฌ ๋ฐ˜๋ณต๋ฌธ

๋”•์…”๋„ˆ๋ฆฌ๋Š” ๋ฐ˜๋ณต๋ฌธ๊ณผ ํ•จ๊ป˜ ์ž์ฃผ ์‚ฌ์šฉ๋œ๋‹ค.

 

โœ”๏ธ key ๋ฐ˜๋ณต

scores = {
    "๊ตญ์–ด": 90,
    "์ˆ˜ํ•™": 85,
    "์˜์–ด": 95
}

for subject in scores:
    print(subject)

 

โœ”๏ธ key + value ๋ฐ˜๋ณต

for subject, score in scores.items():
    print(subject, score)

 

 

zip์„ ์ด์šฉํ•œ ๋”•์…”๋„ˆ๋ฆฌ ์ƒ์„ฑ

๋‘ ๊ฐœ์˜ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ฌถ์–ด ๋”•์…”๋„ˆ๋ฆฌ๋ฅผ ๋งŒ๋“ค ์ˆ˜๋„ ์žˆ๋‹ค.

subjects๋ฅผ key, scores๋ฅผ value๋กœ zip ํ•œ๋‹ค.

 

โœ”๏ธ zip ํ™œ์šฉ

subjects = ["๊ตญ์–ด", "์ˆ˜ํ•™", "์˜์–ด"]
scores = [90, 85, 95]

result = dict(zip(subjects, scores))

print(result)

 

์‹คํ–‰ ๊ฒฐ๊ณผ

{'๊ตญ์–ด': 90, '์ˆ˜ํ•™': 85, '์˜์–ด': 95}

 

 

๋”•์…”๋„ˆ๋ฆฌ ์ปดํ”„๋ฆฌํ—จ์…˜ (Dictionary Comprehension)

๋ฆฌ์ŠคํŠธ ์ปดํ”„๋ฆฌํ—จ์…˜์ฒ˜๋Ÿผ ๋”•์…”๋„ˆ๋ฆฌ๋„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.

 

โœ”๏ธ dict comprehension

numbers = [1, 2, 3, 4, 5]

square_dict = {x: x*x for x in numbers}

print(square_dict)

 

์‹คํ–‰ ๊ฒฐ๊ณผ

{1:1, 2:4, 3:9, 4:16, 5:25}

 

 

defaultdict

๊ธฐ๋ณธ๊ฐ’์„ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•˜๋Š” ๋”•์…”๋„ˆ๋ฆฌ์ด๋‹ค.

 

โœ”๏ธ defaultdict ์˜ˆ์ œ

from collections import defaultdict

word_count = defaultdict(int)

words = ["python", "java", "python", "c++"]

for word in words:
    word_count[word] += 1

print(word_count)

 

์‹คํ–‰ ๊ฒฐ๊ณผ

{'python': 2, 'java': 1, 'c++': 1}

 

 

OrderedDict

์‚ฝ์ž… ์ˆœ์„œ๋ฅผ ์œ ์ง€ํ•˜๋Š” ๋”•์…”๋„ˆ๋ฆฌ์ด๋‹ค.

 

โœ”๏ธ OrderedDict ์˜ˆ์ œ

from collections import OrderedDict

od = OrderedDict()

od["a"] = 1
od["b"] = 2
od["c"] = 3

print(od)

 

์‹คํ–‰ ๊ฒฐ๊ณผ

OrderedDict({'a': 1, 'b': 2, 'c': 3})

 

 

โœ”๏ธ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ์˜ˆ์ œ : ํ•™์ƒ ์„ฑ์  ๋ฐ์ดํ„ฐ ๋ถ„์„

scores = {
    "์ฒ ์ˆ˜": 85,
    "์˜ํฌ": 92,
    "๋ฏผ์ˆ˜": 78,
    "์ง€์€": 95
}

total = 0

for name, score in scores.items():
    total += score

average = total / len(scores)

print("ํ‰๊ท  ์ ์ˆ˜:", average)

top_student = max(scores, key=scores.get)

print("์ตœ๊ณ  ์ ์ˆ˜ ํ•™์ƒ:", top_student)

 

์‹คํ–‰ ๊ฒฐ๊ณผ

ํ‰๊ท  ์ ์ˆ˜: 87.5
์ตœ๊ณ  ์ ์ˆ˜ ํ•™์ƒ: ์ง€์€

 

 

๋งˆ๋ฌด๋ฆฌ

์ด๋ฒˆ ๊ธ€์—์„œ๋Š” Python์˜ ํ•ต์‹ฌ ์ž๋ฃŒ๊ตฌ์กฐ์ธ ๋”•์…”๋„ˆ๋ฆฌ๋ฅผ ์ •๋ฆฌํ–ˆ๋‹ค.

  • dict ์ƒ์„ฑ
  • key / value
  • dict ์ ‘๊ทผ
  • dict ์ˆ˜์ •
  • dict ๋ฐ˜๋ณต๋ฌธ
  • zip
  • dict comprehension
  • defaultdict
  • OrderedDict

๋”•์…”๋„ˆ๋ฆฌ๋Š” Python์—์„œ ๋งค์šฐ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ์ž๋ฃŒ๊ตฌ์กฐ์ด๋ฉฐ

๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ, API ์‘๋‹ต, JSON ๋ฐ์ดํ„ฐ ๋“ฑ ๋‹ค์–‘ํ•œ ์ƒํ™ฉ์—์„œ ํ™œ์šฉ๋œ๋‹ค.

 

 

'Python & SQL > Python Basics' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

7. [ํŒŒ์ด์ฌ] ํ•จ์ˆ˜ ๊ธฐ์ดˆ์™€ ๋งค๊ฐœ๋ณ€์ˆ˜  (0) 2026.03.07
6. [ํŒŒ์ด์ฌ] set๊ณผ frozenset  (0) 2026.03.07
4. [ํŒŒ์ด์ฌ] ํŠœํ”Œ๊ณผ ํŒจํ‚น/์–ธํŒจํ‚น  (0) 2026.03.06
3. [ํŒŒ์ด์ฌ] Python ์ž๋ฃŒํ˜•  (0) 2026.03.06
2. [ํŒŒ์ด์ฌ] ์กฐ๊ฑด๋ฌธ๊ณผ ๋ฐ˜๋ณต๋ฌธ  (0) 2026.03.06
'Python & SQL/Python Basics' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • 7. [ํŒŒ์ด์ฌ] ํ•จ์ˆ˜ ๊ธฐ์ดˆ์™€ ๋งค๊ฐœ๋ณ€์ˆ˜
  • 6. [ํŒŒ์ด์ฌ] set๊ณผ frozenset
  • 4. [ํŒŒ์ด์ฌ] ํŠœํ”Œ๊ณผ ํŒจํ‚น/์–ธํŒจํ‚น
  • 3. [ํŒŒ์ด์ฌ] Python ์ž๋ฃŒํ˜•
J. Son
J. Son
Petit à petit l'oiseau fait son nid.
  • J. Son
    Steady Study Log
    J. Son
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (172) N
      • Python & SQL (63)
        • Python Basics (21)
        • Python Problems (23)
        • Python Practice (11)
        • MySQL (1)
        • Git & GitHub (7)
      • ML & DL (7) N
      • Projects (6) N
        • Project Portfolio (6) N
      • AI Camp (4)
        • Camp Reflection (4)
      • Concept Notes (6)
        • Statistics & Stata (4)
        • Mathematics (2)
      • Archive (85) N
        • Java (24)
        • R (1)
        • Languages (49)
        • Miscellaneous (11) N
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ๋ฐฉ๋ช…๋ก
  • ๋งํฌ

    • GitHub
    • WikiDocs
  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    Python
    Le Petit Prince
    ๊ฐ์ฒด
    ์ž๋ฐ”
    ํŒŒ์ด์ฌ
    ์–ด๋ฆฐ์™•์ž ํ”„๋ž‘์Šค์–ด
    machine learning
    ๋งฅ git
    share.streamlit.io
    ์ ํ”„ํˆฌํŒŒ์ด์ฌ ์—ฐ์Šต๋ฌธ์ œ ํ’€์ด
    ํ”„๋กœ์ ํŠธ ์˜ค์ผ๋Ÿฌ
    MySQL
    passe compose
    ์ ํ”„ํˆฌํŒŒ์ด์ฌ ์—ฐ์Šต๋ฌธ์ œ
    ์ดˆ๋ณด์ž๋ฅผ ์œ„ํ•œ ํŒŒ์ด์ฌ 300์ œ
    GIT
    ๋จธ์‹ ๋Ÿฌ๋‹
    ํŒŒ์ด์ฌ streamlit
    streamlit
    Stata
    ํŒŒ์ด์ฌ ๋ฌธ์ œ
    ์–ด๋ฆฐ์™•์ž ๋ถˆ์–ด
    ๋ถˆ์–ด ๊ด€๊ณ„๋Œ€๋ช…์‚ฌ
    Github
    python streamlit
    ๋ณตํ•ฉ๊ณผ๊ฑฐ
    ํŒŒ์ด์ฌ ํฌ๋กค๋ง
    python problem
    ๋ถˆ์–ด ๊ณต๋ถ€
    ํ”„๋ž‘์Šค์–ด ๊ณต๋ถ€
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.6
J. Son
5. [ํŒŒ์ด์ฌ] ๋”•์…”๋„ˆ๋ฆฌ
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”