๐Ÿ“–List

์ˆœ์„œ๊ฐ€ ์žˆ๋Š” ์ˆ˜์ •๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด์˜ ์ง‘ํ•ฉ

  • ๋‚ด๋ถ€์ ์œผ๋กœ ๋™์  ๋ฐฐ์—ด๋กœ ๊ตฌํ˜„
  • ์ˆ˜์ •, ์‚ญ์ œ, ์ถ”๊ฐ€ ๊ฐ€๋Šฅ
  • ์–ด๋– ํ•œ ์ž๋ฃŒํ˜•๋„ ํฌํ•จํ•  ์ˆ˜ ์žˆ์Œ ( โˆต ํŒŒ์ด์ฌ์€ ๋ชจ๋“  ๊ฒƒ์ด ๊ฐ์ฒด์ธ๋ฐ, ๊ฐ์ฒด์— ๋Œ€ํ•œ ํฌ์ธํ„ฐ ๋ชฉ๋ก์„ ๊ด€๋ฆฌํ•˜๋Š” ํ˜•ํƒœ๋กœ ๊ตฌํ˜„๋˜์–ด ์žˆ์Œ ๋ฐฐ์—ด + ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ)
  • ๋Œ€๊ด„ํ˜ธ[]๋กœ ์ž‘์„ฑ๋˜์–ด์ง€๋ฉฐ, ๋‚ด๋ถ€ ์›์†Œ๋Š” ์‰ผํ‘œ,๋กœ ๊ตฌ๋ถ„

๐Ÿ“–List Slicing

๐Ÿ“–List Comprehension

๐Ÿ“–List์— ๊ด€ํ•œ ์ •๋ณด๋ฅผ ์•Œ ์ˆ˜ ์žˆ๋Š” ํ•จ์ˆ˜

๐Ÿ“Žindex(v)

๋ฆฌ์ŠคํŠธ์— ํ•ด๋‹น ๊ฐ’์ด ์žˆ์œผ๋ฉด ๊ทธ ๊ฐ’์˜ idx๋ฅผ returnํ•˜๋Š” ํ•จ์ˆ˜

nums = [9, 8, 7]
 
nums.index(8) # 1
  • ํ•ด๋‹น ๊ฐ’์ด ๋ฆฌ์ŠคํŠธ์— ์กด์žฌํ•˜์ง€ ์•Š์„ ์‹œ ์—๋Ÿฌ

๐Ÿ“Žcount(v)

๋ฆฌ์ŠคํŠธ์—์„œ ์ฐพ๊ณ ์ž ํ•˜๋Š” ๊ฐ’์˜ ๊ฐœ์ˆ˜๋ฅผ returnํ•˜๋Š” ํ•จ์ˆ˜

nums = [1, 2, 3, 1]
 
nums.count(1) # 2

๐Ÿ“Žmin(list) & max(list)

๋ฆฌ์ŠคํŠธ์—์„œ ์ตœ์†Ÿ๊ฐ’/์ตœ๋Œ“๊ฐ’์„ ์ฐพ๋Š” ํ•จ์ˆ˜

nums = [1, 2, 3, 4, 5]
min(nums) # 1
max(nums) # 5

๐Ÿ“–List๋ฅผ ์กฐ์ž‘ํ•˜๋Š” ํ•จ์ˆ˜

๐Ÿ“Žappend(v)

๋ฆฌ์ŠคํŠธ์˜ ๋งจ ๋งˆ์ง€๋ง‰์— ๊ฐ’์„ ์ถ”๊ฐ€ํ•˜๋Š” ํ•จ์ˆ˜

nums = [1, 2, 3]
 
nums.append(4) # [1, 2, 3, 4]
  • ์–ด๋– ํ•œ ์ž๋ฃŒํ˜•๋„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Œ(๋ฆฌ์ŠคํŠธ์— ๋ฆฌ์ŠคํŠธ ์ถ”๊ฐ€ ๊ฐ€๋Šฅ)

๐Ÿ“Žextend(list)

๋ฆฌ์ŠคํŠธ์— ๋‹ค๋ฅธ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋”ํ•˜๋Š” ํ•จ์ˆ˜

nums = [1, 2, 3]
 
nums.extend([4, 5]) # [1, 2, 3, 4, 5]
  • + ์—ฐ์‚ฐ๊ณผ ๋™์ผ

append๋กœ list๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค๋ฉด ๋ฆฌ์ŠคํŠธ ๊ทธ ์ž์ฒด๋กœ ๊ฐ’์ด ๋“ค์–ด๊ฐ€์ง€๋งŒ extend๋Š” ๋ฆฌ์ŠคํŠธ 2๊ฐœ๊ฐ€ ํ•˜๋‚˜์˜ ๋ฆฌ์ŠคํŠธ๋กœ ํ•ฉ์ณ์ง€๋Š” ๊ฒƒ

๐Ÿ“Žinsert(idx, v)

๋ฆฌ์ŠคํŠธ์˜ ์›ํ•˜๋Š” ์œ„์น˜์— ๊ฐ’์„ ์‚ฝ์ž…ํ•˜๋Š” ํ•จ์ˆ˜

nums = [1, 2, 3]
 
nums.append(1, 10) # [1, 10, 2, 3]

๐Ÿ“Žremove(v)

๋ฆฌ์ŠคํŠธ์—์„œ ์ฒซ ๋ฒˆ์งธ๋กœ ๋‚˜์˜ค๋Š” ๊ฐ’์„ ์‚ญ์ œํ•˜๋Š” ํ•จ์ˆ˜

nums = [5, 1, 2, 3, 4, 5]
 
nums.remove(5) # [1, 2, 3, 4, 5]
  • ํ•ด๋‹นํ•˜๋Š” ๋ชจ๋“  ๊ฐ’์„ ์ง€์šฐ๊ณ  ์‹ถ๋‹ค๋ฉด list comprehension(not in/in)์œผ๋กœ ์ง€์šฐ์žฅ

๐Ÿ“Žpop(idx)

idx๊ฐ’์„ ๋ฐ›์•„์„œ ํ•ด๋‹น idx์— ์žˆ๋Š” ๊ฐ’์„ returnํ•˜๊ณ  ์‚ญ์ œํ•˜๋Š” ํ•จ์ˆ˜

nums = [1, 2, 3, 4, 5]
 
nums.pop(4) # 5 [1, 2, 3, 4]
  • idx๋กœ ์•„๋ฌด๊ฒƒ๋„ ์ ์ง€ ์•Š์„ ์‹œ ๋งจ ๋งˆ์ง€๋ง‰ ์š”์†Œ return ํ›„ ์‚ญ์ œ

๐Ÿ“Žreverse()

๋ฆฌ์ŠคํŠธ์˜ ์ˆœ์„œ๋ฅผ ๋ฐ˜๋Œ€๋กœ ๋’ค์ง‘๋Š” ํ•จ์ˆ˜

nums = [1, 2, 3, 4, 5]
 
nums.reverse() # [5, 4, 3, 2, 1]

๐Ÿ“–List Copy

๐Ÿ“Ž์–•์€ ๋ณต์‚ฌ

๊ฐ์ฒด์˜ ์ฃผ์†Œ๊ฐ’๋งŒ ๋ณต์‚ฌํ•˜๋Š” ๊ฒƒ

a = [1, 2, 3]
b = a
  • a์™€ b์˜ ์ฃผ์†Œ๊ฐ’์ด ๊ฐ™๋‹ค๋Š” ๊ฒƒ์€ ๊ฐ™์€ ๊ฐ์ฒด๋ผ๋Š” ๊ฒƒ์„ ์˜๋ฏธ โ†’ a์˜ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋ฉด b๋„ ๋ฐ”๋€๋‹ค

๐Ÿ“Ž๊นŠ์€ ๋ณต์‚ฌ

๋‹ค๋ฅธ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์— ๊ฐ’์„ ๋ณต์‚ฌํ•˜๋Š” ๊ฒƒ

1. [ : ] ์‚ฌ์šฉ

nums1 = [1, 2, 3]
copied = nums1[:]
 
# 2์ฐจ์› ๋ฆฌ์ŠคํŠธ์—์„œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€
nums2 = [[1, 2], [3, 4]]
copied = [num[:] for num in nums]

2. copy ๋ชจ๋“ˆ

from copy import deepcopy
nums = [1, 2, 3]
copied = deepcopy(nums)