๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป DataScientist for Python/DataCamp

Intermediate Python 5 - List / Dictionary

- dictionary ์—์„œ key๋กœ value๋ฅผ ์ถœ๋ ฅํ•˜๋ ค๋ฉด key ๊ฐ’์ด unique ํ•ด์•ผํ•œ๋‹ค.

-  alban : 2.81 ์œผ๋กœ ๋งˆ์ง€๋ง‰์— ์ถ”๊ฐ€ํ•ด์ค€ ๊ฐ’์€ ์ถœ๋ ฅํ–ˆ์„ ๋•Œ ๋‚˜์˜ค์ง€ ์•Š๋Š” ๊ฒƒ์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๋‹ค. ( ์ด ๊ฐ’์€ dictionary ์— ๋ณด๊ด€๋œ๋‹ค.)

- key ๊ฐ’์€ unique ํ•ด์•ผํ•˜๋ฉฐ immutable(๋ถˆ๋ณ€) ํ•ด์•ผํ•œ๋‹ค. (์ƒ์„ฑ๋œ ํ›„์— ๋ณ€๊ฒฝ ๋˜์–ด์„œ๋Š” ์•ˆ๋œ๋‹ค.)

- str, bool, int ๋ชจ๋‘ ๋ถˆ๋ณ€ํ•ด์•ผ ํ•˜์ง€๋งŒ ์ด๋•Œ list๋Š” ์ƒ์„ฑ๋œ ํ›„์— ๋ณ€๊ฒฝ ๋  ์ˆ˜ ์žˆ๋‹ค.

- ํ•˜์ง€๋งŒ ๋‘๋ฒˆ์งธ์™€ ๊ฐ™์ด list๋ฅผ key๋กœ ์‚ฌ์šฉํ•˜๊ฒŒ ๋  ๊ฒฝ์šฐ์— error๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.

-  ์ด๋•Œ world ๋ผ๋Š” dictionary์— sealand ๊ฐ’์ด 0.000027์ธ๋ฐ 0.000028์œผ๋กœ ํ•œ๋ฒˆ ๋” ์ถ”๊ฐ€ํ•ด์ค€๋‹ค๋ฉด, ๊ฐ’์ด ์ถ”๊ฐ€๊ฐ€ ๋˜๋Š”๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๋ฎ์–ด์”Œ์›Œ์ง€๊ฒŒ ๋œ๋‹ค.

- ๊ทธ๋ฆฌ๊ณ  del์„ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์šฐ๋ ค๊ณ  ํ•œ๋‹ค๋ฉด ๊ฐ’์ด ํ•˜๋‚˜๋งŒ ์ง€์›Œ์ง€๊ณ  ํ•˜๋‚˜๊ฐ€ ๋‚จ๊ฒŒ ๋˜๋Š”๊ฒƒ์ด ์•„๋‹ˆ๋ผ sealand๋ผ๋Š” ๋ชจ๋“  ๊ฐ’์ด ์‚ญ์ œ๋œ๋‹ค.

 

- List vs Dictionary

- [] ๋กœ select, update, remove ํ•˜๋Š” ๊ฒƒ์€ ๋ชจ๋‘ ๋™์ผํ•˜๋‹ค.

- list ์˜ ๊ฐ’์€ sequence ํ•˜๋‹ค. ๋”ฐ๋ผ์„œ ์ˆซ์ž์˜ ๋ฒ”์œ„๋กœ indexing ๋œ๋‹ค.

ํ•˜์ง€๋งŒ dictionary๋Š” ๋ถˆ๋ณ€(immutable)ํ•˜๋Š” ๊ณ ์œ ํ‚ค(unique key)๋กœ indexing ๋œ๋‹ค.

- ๊ทธ๋ ‡๋‹ค๋ฉด ์–ด๋–จ๋•Œ list๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์–ด๋–จ ๋•Œ dictionary๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฐ€ ?

- ์ˆœ์„œ๊ฐ€ ์ค‘์š”ํ•˜๊ณ  ๋ฐ์ดํ„ฐ์˜ ์ „์ฒด ํ•˜์œ„ ์ง‘ํ•ฉ์„ ์‰ฝ๊ฒŒ ์„ ํƒํ•˜๊ธฐ ์œ„ํ•ด์„  list๊ฐ€ ์ข‹๋‹ค.

- ํ•˜์ง€๋งŒ ๋น ๋ฅด๊ณ  ๊ณ ์œ ํ•œ ๊ฐ’์„ ์ฐพ์„๋•Œ์—๋Š” dictionary๊ฐ€ ์ข‹๋‹ค.

- ์—ฐ์Šต

- dictionary ์—์„œ ์•ˆ์— ์ž‘์€ dictionary ์Œ์ด ๋˜ ์žˆ๋Š” ๊ฒฝ์šฐ 

๊ฐ’์„ ๊ตฌํ•ด์ค„๋•Œ [][]๋‘๋ฒˆ์˜ ๋Œ€๊ด„ํ˜ธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ value๋ฅผ ๊ตฌํ•œ๋‹ค.

- sub-dictionary์— ๊ฐ’์„ ์ถ”๊ฐ€ํ•ด์ค„ ๊ฒฝ์šฐ

data = { 'capital':'rome', 'population' : 59.83 } ์œผ๋กœ data๋กœ ๋จผ์ € ๋งŒ๋“ค์–ด์ฃผ๊ณ 

europe['italy'] = data ํ•ด์ค˜์•ผ ์•„๋ž˜์™€ ๊ฐ™์ด ๋งŒ๋“ค์–ด ์ง„๋‹ค.

'italy': {'capital': 'rome', 'population': 59.83}}

 

- ์Šฌ๋ผ์ด๋“œ ์ถœ์ฒ˜ : Datacamp - Datascientist with python

https://campus.datacamp.com/courses/intermediate-python/dictionaries-pandas?ex=5