ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • ํŒŒ์ด์ฌ - Call by assignment
    Computer Science/Python 2023. 8. 3. 20:01
    ๋ฐ˜์‘ํ˜•

    ํŒŒ์ด์ฌ์˜ ํ•จ์ˆ˜์— ์ธ์ž๋ฅผ ์ „๋‹ฌํ•  ๋•Œ, ์ด๋Š” call by assignment ๋ผ๋Š” ๋ฐฉ์‹์œผ๋กœ ์ „๋‹ฌ๋œ๋‹ค. 

     

    ์ด๋Š” ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์ „๋‹ฌ๋ฐ›๋Š” ๊ฐ์ฒด์— ๋”ฐ๋ผ ๊ฐ์ฒด์˜ ์ฐธ์กฐ๋ฐฉ์‹์ด ๊ฒฐ์ •๋œ๋‹ค๋Š” ์˜๋ฏธ๋กœ, ๊ณต์‹ ๋ฌธ์„œ์— ๋”ฐ๋ฅด๋ฉด Mutual ๊ฐ์ฒด๋Š” call by reference ํ˜•ํƒœ๋กœ ์ฐธ์กฐํ˜•์œผ๋กœ ๋ณ€์ˆ˜๋ฅผ ๋‹ค๋ฃจ๋ฉฐ immutable ๊ฐ์ฒด๋Š” call by value์˜ ํ˜•ํƒœ๋กœ ๋ณ€์ˆ˜๋ฅผ ํ•ธ๋“ค๋งํ•œ๋‹ค. 

     

    - Mutable object: list, dict, set ๋“ฑ์˜ ๋ณ€๊ฒฝ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด

    - Immutable object: str, int, tuple ๋“ฑ์˜ ๋ณ€๊ฒฝ ๋ถˆ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด

     

    ๊ฐ€๋ น ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฝ”๋“œ๋Š” ์ „๋‹ฌ๋˜๋Š” ๊ฐ์ฒด์— ๋”ฐ๋ผ ํŒŒ์ด์ฌ์ด ๋ณ€์ˆ˜๋ฅผ ์–ด๋–ป๊ฒŒ ํ•ธ๋“ค๋งํ•˜๋Š”์ง€๋ฅผ ๋ณด์—ฌ์ค€๋‹ค. 

    ์ถœ๋ ฅ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๋ฉด 

    ์ฒซ๋ฒˆ์งธ ์ฝ”๋“œ์—์„œ๋Š” ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•  ๋•Œ ์ˆซ์ž๋ฅผ ์ธ์ˆ˜๋กœ ์ „๋‹ฌ๋ฐ›๊ธฐ ๋•Œ๋ฌธ์— call by value๋กœ ์ƒˆ๋กœ ๋ณ€์ˆ˜๋ฅผ ํ• ๋‹นํ•ด์„œ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ชจ์Šต์„ ๋ณด์—ฌ์ฃผ๊ณ  

    ๋‘๋ฒˆ์งธ ์ฝ”๋“œ์—์„œ๋Š” ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•  ๋•Œ list๋ฅผ ์ธ์ˆ˜๋กœ ์ „๋‹ฌ๋ฐ›๊ธฐ ๋•Œ๋ฌธ์— call by reference๋กœ ์ „๋‹ฌ๋ฐ›์€ ๊ฐ์ฒด๋ฅผ ์ง์ ‘ ๋ณ€๊ฒฝํ•œ๋‹ค. 

     

    ์ •๋ฆฌํ•˜๋ฉด 

    mutableํ•˜๋ฉด ํ•จ์ˆ˜ ์™ธ๋ถ€์—์„œ๋„ ์›๋ณธ ๋ณ€์ˆ˜๋ฅผ ๋ณ€๊ฒฝ์‹œํ‚ค๊ณ 

    immutableํ•˜๋ฉด ํ•จ์ˆ˜์—์„œ ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋ฅผ ํ• ๋‹นํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์™ธ๋ถ€์—์„œ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๋Š”๋‹ค. 

Designed by Tistory.