ํ‹ฐ์Šคํ† ๋ฆฌ ๋ทฐ

728x90
๋ฐ˜์‘ํ˜•

๋ฌด์—‡์„ ํ™œ์šฉํ•˜๋ฉด ์ข‹์„๊นŒ?

ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋Š” ๊ฐ ์–ธ์–ด๋งˆ๋‹ค ์ œ๊ณตํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์กฐ๊ธˆ์”ฉ ์ƒ์ดํ•˜๋‹ค. ํŒŒ์ด์ฌ์˜ ๊ฒฝ์šฐ ๋‹ค์–‘ํ•œ built-in function์„ ํ†ตํ•ด ์ฝ”๋“œ๋ฅผ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์ž‘์„ฑํ•˜๊ณ , ๋น ๋ฅด๊ฒŒ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ์žฅ์ ์ด ์žˆ๋‹ค. ์ด๋ฅผ ์ž˜ ์ˆ™์ง€ํ•œ๋‹ค๋ฉด, ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ์™€ ๊ฐ™์€ ์ƒํ™ฉ์—์„œ ํšจ์œจ์ ์œผ๋กœ ๋ฌธ์ œ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋‹ค.


List ๋‚ด ๊ฐ ์š”์†Œ ๋ณ€๊ฒฝ

๊ธฐ๋ณธ ์ ์œผ๋กœ ๋ฆฌ์ŠคํŠธ๋ฅผ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ฆฌ์ŠคํŠธ์— ๊ฐ’์„ ์ถ”๊ฐ€, ์‚ญ์ œ, ๋ณ€๊ฒฝ์ด ํ•„์š”ํ•˜๋‹ค.
(๊ฐ ํ•จ์ˆ˜๋“ค์€ ๋ฐ˜ํ™˜๊ฐ’์ด ์กด์žฌํ•˜์ง€ ์•Š๋Š”๋‹ค.)

1. append

# ๋ฆฌ์ŠคํŠธ ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค ๋’ค์— ๊ฐ’ ์‚ฝ์ž…
list.append(item)

2. extend

# ๋ฆฌ์ŠคํŠธ1์— ๋ฆฌ์ŠคํŠธ2์˜ ์›์†Œ๋“ค์„ ๊ฐ€์ ธ์˜ด
list1.extend(list2)

3. insert

# ์›ํ•˜๋Š” ์ธ๋ฑ์Šค ์œ„์น˜์— ๊ฐ’์„ ์‚ฝ์ž…
list.insert(index, item)

4. remove

# ๋ฆฌ์ŠคํŠธ ์ค‘ ํ•ด๋‹น ๊ฐ’์„ ์‚ญ์ œ
list.remove(item)

List transpose

N x N ํ–‰๋ ฌ์˜ ํ–‰๊ณผ ์—ด์„ ์ „ํ™˜ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” 2์ค‘ ๋ฐ˜๋ณต๋ฌธ(i, j๋ฅผ j, i๋กœ ์ ‘๊ทผํ•˜์—ฌ ์ „ํ™˜)์„ ํ†ตํ•ด ์ฒ˜๋ฆฌํ•˜์—ฌ์•ผ ํ•œ๋‹ค.
ํŒŒ์ด์ฌ์—์„œ๋Š” Numpy์™€ zip์„ ํ†ตํ•ด ๋ฐ˜๋ณต๋ฌธ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ํ–‰๊ณผ ์—ด์„ ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ์—์„œ Numpy๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ๋„ ์กด์žฌํ•˜๋ฏ€๋กœ, built-in function์ธ zip์„ ํ™œ์šฉํ•œ ํ–‰, ์—ด ์ „ํ™˜์„ ์ตํ˜€๋‘๋ฉด ๋„์›€์ด ๋œ๋‹ค.

nums = [[1, 2, 3], [4, 5 ,6]]
# [[1,4], [2,5], [3,6]]
transpose_nums = [num for num in zip(*nums)]
  • *list๋ฅผ zip์˜ ์ธ์ž๋กœ ์ฃผ๊ฒŒ ๋˜๋ฉด [[i][0], [i+1][0], ... [i+N][0]๊ณผ ๊ฐ™์ด ์ ‘๊ทผํ•˜์—ฌ ๊ฐ’์„ ๊ฐ€์ ธ์˜ค๊ฒŒ ๋œ๋‹ค.
  • ์ฆ‰ ์ด์™€ ๊ฐ™์€ ์ ‘๊ทผ ๋ฐฉ๋ฒ•์€ ์—ด์„ ์šฐ์„ ์œผ๋กœ ํ•˜์—ฌ ์ˆœ์ฐจ์ ์œผ๋กœ ํƒ์ƒ‰ํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ๊ฐ™๊ฒŒ ๋œ๋‹ค.

copy()

nums = [1,2]
copy_nums = old_nums

copy_nums.append(3)
  • ์œ„์˜ ์˜ˆ์‹œ์™€ ๊ฐ™์ด ์ง„ํ–‰ํ•˜๋ฉด, copy_nums์— ๊ฐ’์„ appendํ•˜์˜€์ง€๋งŒ ๊ธฐ์กด์˜ nums ๋ฆฌ์ŠคํŠธ์—๋„ ๊ฐ’์ด ์ถ”๊ฐ€๋œ๋‹ค.
  • ๊ธฐ์กด์˜ ๋ฆฌ์ŠคํŠธ๋Š” ์œ ์ง€ํ•œ์ฒด๋กœ ๋ณ„๋„๋กœ ๊ฐ’์„ ๊ฐ€์ ธ์˜ค๊ณ ์ž ํ•œ๋‹ค๋ฉด copy_nums = nums.copy()๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.
728x90
๋ฐ˜์‘ํ˜•
๋Œ“๊ธ€
๊ธ€ ๋ณด๊ด€ํ•จ
์ตœ๊ทผ์— ์˜ฌ๋ผ์˜จ ๊ธ€
์ตœ๊ทผ์— ๋‹ฌ๋ฆฐ ๋Œ“๊ธ€