πŸ“¦ copy λͺ¨λ“ˆ

  • ꡬ뢄 : Module
  • μ„€λͺ… : 객체λ₯Ό 볡사할 λ•Œ μ‚¬μš©ν•˜λŠ” ν‘œμ€€ 라이브러리 λͺ¨λ“ˆλ‘œ, 얕은 볡사와 κΉŠμ€ 볡사λ₯Ό μœ„ν•œ ν•¨μˆ˜λ₯Ό μ œκ³΅ν•¨.

πŸ”§ ν•¨μˆ˜

1. copy.copy(x)

  • μ„€λͺ…: 객체 x의 얕은 볡사λ₯Ό λ°˜ν™˜.
    μ΅œμƒμœ„ 객체만 μƒˆλ‘œ λ§Œλ“€κ³ , 내뢀에 ν¬ν•¨λœ 객체듀은 원본과 같은 μ°Έμ‘°λ₯Ό κ³΅μœ ν•¨.
  • λ§€κ°œλ³€μˆ˜:
    • x: 볡사할 λŒ€μƒ 객체
import copy
a = [1, 2, [3, 4]]
b = copy.copy(a)

2. copy.deepcopy(x, memo=None)

  • μ„€λͺ…: 객체 x의 κΉŠμ€ 볡사λ₯Ό λ°˜ν™˜.
    내뢀에 ν¬ν•¨λœ λͺ¨λ“  객체λ₯Ό μž¬κ·€μ μœΌλ‘œ λ³΅μ‚¬ν•˜μ—¬, 원본과 μ™„μ „νžˆ λ…λ¦½λœ 객체 생성.
  • λ§€κ°œλ³€μˆ˜:
    • x: 볡사할 λŒ€μƒ 객체
    • memo (선택): μˆœν™˜ μ°Έμ‘°λ₯Ό λ°©μ§€ν•˜κΈ° μœ„ν•œ λ‚΄λΆ€ μš©λ„ λ”•μ…”λ„ˆλ¦¬. 일반적으둜 μƒλž΅.
import copy
a = [1, 2, [3, 4]]
b = copy.deepcopy(a)