๊ด€๋ฆฌ ๋ฉ”๋‰ด

JiYoung Dev ๐Ÿ–ฅ

[ํŒŒ์ด์ฌ ๋ณต์Šต] ๋ฆฌ์ŠคํŠธ์™€ ๋”•์…”๋„ˆ๋ฆฌ - 2023.02.07~08 ๋ณธ๋ฌธ

python

[ํŒŒ์ด์ฌ ๋ณต์Šต] ๋ฆฌ์ŠคํŠธ์™€ ๋”•์…”๋„ˆ๋ฆฌ - 2023.02.07~08

Shinjio 2023. 2. 8. 20:43
< ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ฐ’์„ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ์ž๋ฃŒํ˜• ํ•จ์ˆ˜>

1. ๋ฆฌ์ŠคํŠธ(List)
2. ๋”•์…”๋„ˆ๋ฆฌ(Dictionary)

 

1. ๋ฆฌ์ŠคํŠธ(List) 

1-1. ๋ฆฌ์ŠคํŠธ ์„ ์–ธ & ์š”์†Œ ์ ‘๊ทผํ•˜๊ธฐ

[ ๊ฐœ๋… ์ •๋ฆฌ ]

- ๋ฆฌ์ŠคํŠธ : ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์ž๋ฃŒ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ์ž๋ฃŒํ˜•

- ์š”์†Œ : ๋ฆฌ์ŠคํŠธ ๋‚ด๋ถ€์— ์žˆ๋Š” ๊ฐ๊ฐ์˜ ๋‚ด์šฉ

- ์ธ๋ฑ์Šค : ๋ฆฌ์ŠคํŠธ ๋‚ด๋ถ€์—์„œ ๊ฐ’์˜ ์œ„์น˜

 

๋ฆฌ์ŠคํŠธ(List) ํ•จ์ˆ˜๋ž€,
๋ณ€์ˆ˜์— ์—ฌ๋Ÿฌ๊ฐœ์˜ ๊ฐ’์„ ์ €์žฅํ•˜๊ณ  ์‹ถ์„ ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํ•จ์ˆ˜๋กœ ๋Œ€๊ด„ํ˜ธ [ ] ๋‚ด๋ถ€์— ์ž๋ฃŒ๋ฅผ ๋„ฃ์–ด ์„ ์–ธ

ex. numbers = [1, 2, 5, 0, 11]

      names = ["๊ธธ๋™", "์‚ฌ๋ž‘", "ํ‰ํ™”", "ํ–‰์ง„"]

 

์ธ๋ฑ์‹ฑ(Indexing)์ด๋ž€, ์š”์†Œ๋ฅผ ๋ฐ›์•„์˜ค๋Š” ๊ฒƒ 

ex. print(numbers[2]) ์ž…๋ ฅํ•˜๋ฉด ๊ฒฐ๊ณผ๊ฐ’์€ 5  โ€ป ์ธ๋ฑ์‹ฑ์‹œ ์ˆœ์„œ๋Š” 0๋ถ€ํ„ฐ ์‹œ์ž‘

      print(numbers[-1]) ์ž…๋ ฅํ•˜๋ฉด ๊ฒฐ๊ณผ๊ฐ’์€ 11 โ€ป ์Œ์ˆ˜๋ฅผ ํ†ตํ•ด ๋’ค์—์„œ๋ถ€ํ„ฐ ์š”์†Œ ์„ ํƒ ๊ฐ€๋Šฅ

 

์ธ๋ฑ์‹ฑ ์Šฌ๋ผ์ด์‹ฑ์„ ํ†ตํ•ด ์š”์†Œ์˜ ๋ฒ”์œ„ ์ง€์ • ๊ฐ€๋Šฅ

ex. print(numbers[0:3]) ์ž…๋ ฅํ•˜๊ณ  ์‹คํ–‰ํ•˜๋ฉด ๊ฒฐ๊ณผ๊ฐ’์€ 1, 2, 5 

      print(names[1: ] ์ž…๋ ฅ ํ›„ ์‹คํ–‰ํ•˜๋ฉด ๊ฒฐ๊ณผ๊ฐ’์€ ์‚ฌ๋ž‘, ํ‰ํ™”, ํ–‰์ง„

 

๋ฆฌ์ŠคํŠธ ์—ฐ์‚ฐ์ž ์‚ฌ์šฉ, ์š”์†Œ ์ถ”๊ฐ€, ์ œ๊ฑฐ ์‚ฌ์šฉ ์˜ˆ์‹œ

 

1-2. ๋ฆฌ์ŠคํŠธ ์—ฐ์‚ฐ์ž

 

len : ์š”์†Œ์˜ ๊ฐœ์ˆ˜ ๊ตฌํ•˜๋Š” ์—ฐ์‚ฐ์ž

+ : ๋ฆฌ์ŠคํŠธ ์š”์†Œ ์—ฐ๊ฒฐ 

* : ๋ฆฌ์ŠคํŠธ ์š”์†Œ ๋ฐ˜๋ณต

 

1-3. ๋ฆฌ์ŠคํŠธ ์š”์†Œ ์ถ”๊ฐ€

- .append( ) : ๋งจ ์˜ค๋ฅธ์ชฝ์— ์š”์†Œ ๊ฐ’ ์ถ”๊ฐ€

- .extend( ) : ๋งจ ์˜ค๋ฅธ์ชฝ์— ์š”์†Œ ๊ฐ’ ์ถ”๊ฐ€ / ์—ฌ๋Ÿฌ๊ฐœ์˜ ์š”์†Œ๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Œ (append๋ฅผ ์—ฌ๋Ÿฌ๋ฒˆ ์‹คํ–‰ํ•œ ํšจ๊ณผ)

.insert(n, m) : ์ง€์ •ํ•œ ์œ„์น˜(n)์— ์ง€์ •ํ•œ ์š”์†Œ(m) ์‚ฝ์ž…

 

1-4. ๋ฆฌ์ŠคํŠธ ์š”์†Œ ์ œ๊ฑฐ

1) ์ธ๋ฑ์Šค๋กœ ์ œ๊ฑฐํ•˜๊ธฐ

    : ์š”์†Œ์˜ ์œ„์น˜(๋ฒˆํ˜ธ)๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ œ๊ฑฐํ•˜๋Š” ๋ฐฉ๋ฒ• (Del, Pop ์‚ฌ์šฉ)

  - del ๋ฆฌ์ŠคํŠธ๋ช…[์ธ๋ฑ์Šค]

  - ๋ฆฌ์ŠคํŠธ๋ช….pop(์ธ๋ฑ์Šค)

โ€ป del ์€ ':(์ธ๋ฑ์‹ฑ ์Šฌ๋ผ์ด์‹ฑ)'์„ ํ™œ์šฉํ•˜์—ฌ ์š”์†Œ๋ฅผ ํ•œ๊บผ๋ฒˆ์— ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์Œ 

 

2) ๊ฐ’์œผ๋กœ ์ œ๊ฑฐํ•˜๊ธฐ

    : ๊ฐ’์„ ์ง€์ •ํ•ด์„œ ์ œ๊ฑฐํ•˜๋Š” ๊ฒƒ (Remove ์‚ฌ์šฉ)

 - ๋ฆฌ์ŠคํŠธ.remove(๊ฐ’)

โ€ป ๋‹จ remove ์‚ฌ์šฉ์‹œ ๊ฐ’์ด ๋ฆฌ์ŠคํŠธ ๋‚ด๋ถ€์— ์—ฌ๋Ÿฌ๊ฐœ๊ฐ€ ์กด์žฌํ•ด๋„ ๊ฐ€์žฅ ๋จผ์ € ๋ฐœ๊ฒฌ๋˜๋Š” 1๊ฐœ์˜ ๊ฐ’๋งŒ ์ œ๊ฑฐ๋จ.

    ์ค‘๋ณต๋œ ์—ฌ๋Ÿฌ๊ฐœ์˜ ๊ฐ’์„ ์ œ๊ฑฐํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ฐ˜๋ณต๋ฌธ ์‚ฌ์šฉ

 

3) ๋ชจ๋‘ ์ œ๊ฑฐํ•˜๊ธฐ (Clear)

 - ๋ฆฌ์ŠคํŠธ.clear( )

 

in/not in ์‚ฌ์šฉ ์˜ˆ์‹œ

 

1-5. ํŠน์ • ๊ฐ’์ด ๋ฆฌ์ŠคํŠธ ๋‚ด๋ถ€์— ์žˆ๋Š”์ง€ ํ™•์ธ : in/not in ์—ฐ์‚ฐ์ž

- ๊ฐ’ in ๋ฆฌ์ŠคํŠธ (๊ฐ’์ด ๋ฆฌ์ŠคํŠธ ๋‚ด์— ์žˆ๋Š”์ง€) / ๊ฐ’ not in ๋ฆฌ์ŠคํŠธ (๊ฐ’์ด ๋ฆฌ์ŠคํŠธ ๋‚ด์— ์—†๋Š”์ง€)

   → ๊ฒฐ๊ณผ๊ฐ’์€ True ํ˜น์€ False๋กœ ์ถœ๋ ฅ๋จ

 

๋ฆฌ์ŠคํŠธ ์ •๋ ฌ ์‚ฌ์šฉ ์˜ˆ์‹œ

1-6. ๋ฆฌ์ŠคํŠธ ์ •๋ ฌ : sorted, sort

- sorted → ๊ธฐ์กด ๋ฆฌ์ŠคํŠธ๋Š” ๊ฑด๋“œ๋ฆฌ์ง€ ์•Š๊ณ , ์ •๋ ฌ๋œ ์ƒˆ๋กœ์šด ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ฆฌํ„ด (๋น„ํŒŒ๊ดด์  ์ž‘๋™)

- sort  → ๊ธฐ์กด ๋ฆฌ์ŠคํŠธ๋ฅผ ์ •๋ ฌ, ๊ทธ๋Ÿฌ๋‚˜ ๋ฆฌํ„ด๋˜์ง€ ์•Š์Œ (ํŒŒ๊ดด์  ์ž‘๋™)

 

1-7. ๋ฌธ์ œํ’€์ด

1) greetings ํ•จ์ˆ˜์˜ ๊ฐ ์š”์†Œ๋ฅผ ๋ชฉ๋ก์œผ๋กœ ์ถœ๋ ฅํ•˜๋Š” ๋ฐฉ๋ฒ• 

 

point 1. while ๋ฐ˜๋ณต๋ฌธ ์‚ฌ์šฉ

point 2. while ์กฐ๊ฑด์„ len ํ•จ์ˆ˜ ์‚ฌ์šฉํ•˜์—ฌ ์ž‘์„ฑ

 

2) ํ™”์”จ ์˜จ๋„๋ฅผ ์„ญ์”จ ์˜จ๋„๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ์ถœ๋ ฅ

 

point 1. def ํ•จ์ˆ˜ ์‚ฌ์šฉํ•˜์—ฌ ํ™”์”จ์˜จ๋„๋ฅผ ์„ญ์”จ์˜จ๋„๋ฅผ ๋ณ€ํ™˜

point 2. while ๋ฐ˜๋ณต๋ฌธ ์‚ฌ์šฉํ•˜์—ฌ temperature_list์˜ ๊ฐ ์š”์†Œ๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ์„ญ์”จ์˜จ๋„๋กœ ๋ณ€ํ™˜

point 3. round ํ•จ์ˆ˜ ์‚ฌ์šฉํ•˜์—ฌ ์†Œ์ˆ˜์  ์ฒซ์งธ์ž๋ฆฌ๊นŒ์ง€๋งŒ ์ถœ๋ ฅ


3) ๋ฆฌ์ŠคํŠธ ๊ฐ’ ์ถ”๊ฐ€, ์ œ๊ฑฐ, ์‚ฝ์ž…, ์ •๋ ฌ

 

point 1. numbers ์—์„œ ํ™€์ˆ˜ ์ œ๊ฑฐ์‹œ if - else ๋ฌธ ์‚ฌ์šฉ. else ๊ฐ€ ์—†๋‹ค๋ฉด 7์ด ์‚ญ์ œ๋˜์ง€ ์•Š์Œ. ์•„๋ž˜ ์‚ฌ์ง„ ์ฐธ๊ณ .

 

 

1-8. ๋ฆฌ์ŠคํŠธ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉ๋˜๋Š” For ๋ฐ˜๋ณต๋ฌธ

for ๋ฐ˜๋ณต์ž in ๋ฐ˜๋ณตํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ:

์ฝ”๋“œ

 

for ๋ฐ˜๋ณต๋ฌธ

 

โ€ป For ํ•จ์ˆ˜์™€ ์ž์ฃผ ์“ฐ์ด๋Š” range ํ•จ์ˆ˜

 

for ๋ฐ˜๋ณต๋ฌธ,&nbsp; range ํ•จ๊ป˜ ์‚ฌ์šฉ

 

1-9. ๋ฌธ์ œํ’€์ด

1) for ํ•จ์ˆ˜ ํ™œ์šฉํ•˜์—ฌ ์š”์†Œ ๊ฐ’๊ณผ ์ธ๋ฑ์Šค๊ฐ’ ์ถœ๋ ฅ

 

2) for, range ์‚ฌ์šฉ(1)

 

3) for, range ์‚ฌ์šฉ(2)

 

4) for, range ์‚ฌ์šฉ(3)

 

5) for, range ์‚ฌ์šฉ(4)

 

6) ๋ฆฌ์ŠคํŠธ ์š”์†Œ์˜ ์ง์ˆ˜/ํ™€์ˆ˜ ์—ฌ๋ถ€, ์ž๋ฆฟ์ˆ˜ ๊ตฌํ•˜๊ธฐ

 

point 1. ์ž๋ฆฟ์ˆ˜ ๊ตฌํ•˜๊ธฐ๋Š” ์ˆซ์žํ˜•์„ ๋ฌธ์žํ˜•์œผ๋กœ ๋ฐ”๊พผ ํ›„ len ํ•จ์ˆ˜ ์‚ฌ์šฉ

 

7) ์ค‘์ฒฉ ๋ฆฌ์ŠคํŠธ์˜ ์ค‘์ฒฉ ํ•ด์ œ

 

point 1. ์ธ๋ฑ์Šค์—๋Š” ์ˆ˜์‹์„ ๋„ฃ์„ ์ˆ˜ ์žˆ๋‹ค.

 

 

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

 

๋”•์…”๋„ˆ๋ฆฌ

 

โ€ป ๋ฆฌ์ŠคํŠธ๊ฐ€ ์ธ๋ฑ์Šค๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐ’์„ ์ €์žฅํ•˜๋Š” ๊ฒƒ์ด๋ผ๋ฉด, ๋”•์…”๋„ˆ๋ฆฌ๋Š” ํ‚ค๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐ’์„ ์ €์žฅํ•˜๋Š” ๊ฒƒ

 

๋”•์…”๋„ˆ๋ฆฌ๋Š” {} ์ค‘๊ด„ํ˜ธ๋กœ ์„ ์–ธํ•˜๋ฉฐ, 'ํ‚ค:๊ฐ’' ํ˜•ํƒœ๋ฅผ ์‰ผํ‘œ(,)๋กœ ์—ฐ๊ฒฐํ•ด์„œ ๋งŒ๋“ฆ

ํ‚ค๋Š” ๋ฌธ์ž์—ด, ์ˆซ์ž, ๋ถˆ ๋“ฑ์œผ๋กœ ์„ ์–ธ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฌธ์ž์—ด์„ ์‚ฌ์šฉ

๋‹จ, ๋”•์…”๋„ˆ๋ฆฌ์˜ ์š”์†Œ์— ์ ‘๊ทผํ•  ๋•Œ๋Š” ๋Œ€๊ด„ํ˜ธ[ ]๋ฅผ ์ž…๋ ฅํ•˜๊ณ  ๋‚ด๋ถ€์— ํ‚ค ์ž…๋ ฅ 

 

2-1. ๋”•์…”๋„ˆ๋ฆฌ์— ๊ฐ’ ์ถ”๊ฐ€/์ œ๊ฑฐ

 

- ๋”•์…”๋„ˆ๋ฆฌ[์ƒˆ๋กœ์šดํ‚ค] = ์ƒˆ๋กœ์šด๊ฐ’

- ๋”•์…”๋„ˆ๋ฆฌ[๊ธฐ์กดํ‚ค] = ์ƒˆ๋กœ์šด๊ฐ’ → ๊ธฐ์กด ๊ฐ’ ์ œ๊ฑฐ ํ›„ ์ƒˆ๋กœ์šด ๊ฐ’์œผ๋กœ ๋ณ€๊ฒฝ

- del ๋”•์…”๋„ˆ๋ฆฌ[ํ‚ค] → ์ œ๊ฑฐ

 

.values, .keys, in ํ™œ์šฉ

 

.values, .keys, items, for ๋ฐ˜๋ณต๋ฌธ ํ™œ์šฉ

 

2-2. ๋”•์…”๋„ˆ๋ฆฌ ๋‚ด๋ถ€์— ํ‚ค ๊ฐ’ ์žˆ๋Š”์ง€ ํ™•์ธ

 - in / get() ํ•จ์ˆ˜

 

2-3. ๋”•์…”๋„ˆ๋ฆฌ ํ•จ์ˆ˜์™€ ํ•จ๊ป˜ ์‚ฌ์šฉ๋˜๋Š” For ๋ฐ˜๋ณต๋ฌธ

for ํ‚ค ๋ณ€์ˆ˜ in ๋”•์…”๋„ˆ๋ฆฌ

     ์ฝ”๋“œ

 

2-4. ๋ฌธ์ œํ’€์ด

1) ๋”•์…”๋„ˆ๋ฆฌ์—์„œ ํ‚ค์™€ ๊ฐ’ ๋ณ€ํ™˜ํ•˜๊ธฐ

 

 

2) conter ๋”•์…”๋„ˆ๋ฆฌ ๊ตฌ์„ฑํ•˜๊ธฐ (ํ‚ค : numbers์˜ ์š”์†Œ, ๊ฐ’ : ์š”์†Œ ๊ฐœ์ˆ˜)

 

3) ์ค‘์ฒฉ๋œ ๋ฆฌ์ŠคํŠธ, ๋”•์…”๋„ˆ๋ฆฌ ๋ฐ˜๋ณต๋ฌธ ์ ์šฉ

point 1. type() is str/list/dict ์™€ ์กฐ๊ฑด๋ฌธ ์‚ฌ์šฉํ•˜๊ธฐ