새벽_나그네
12시 지난 새벽
새벽_나그네
전체 방문자
오늘
어제
  • 분류 전체보기
    • TIL
    • DevLog
    • Algorithm
    • ComputerScience
    • etc

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 내일배움단
  • Python
  • Selenium 4
  • 스파르타코딩클럽
  • portfolio
  • AI트랙
  • 코딩
  • 코딩프로젝트
  • 코린이
  • 개발일지
  • til
  • Github
  • 내일배움캠프
  • machine learning
  • docker
  • 프로그래머스
  • 국비지원
  • 내일배움카드
  • 자기주도학습
  • TodayILearned

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
새벽_나그네

12시 지난 새벽

ComputerScience

[3분 CS지식] Immutable과 Mutable

2022. 6. 8. 16:09

Immutable과 Mutable을 사전적으로 풀어보면 불변과 가변으로 풀어서 볼 수 있다.

그런데 python이나 프로그래밍 언어에서 이야기하는 Immutable과 Mutable은 어떤 것을 말하는 것일까? 무엇이 변하고 변하지 않는다는 것인지 생각하는 것이 필요할 것이다.

 

여기서 보편적으로 파이썬에서 말하는 것을 정리해보겠다.

파이썬의 모든 것의 구성은 객체이다. 그 객체는 mutable과 immutable로 구분한다.

- immutable : 숫자, 문자열, 튜플

- mutable : 리스트, 딕셔너리, Numpy의 배열

 

분류한 내용을 보면서 생각해보자 숫자 문자열 튜플은 값을 변경하지 못하고 리스트 딕셔너리 배열은 값을 변경하는 것이 가능하다는 것이다? 이 내용만 보면 이게 무슨 소리인가 할 수 있다고 생각한다. 여기서 주어가 빠졌기 때문에 생각의 오류가 생기게 된다.

 

여기서 말하는 것은 객체의 값이라는 주어를 생각하면서 보도록 한다.

 

1. mutable 객체

객체를 생성한 후 객체의 값을 수정 가능, 변수는 값이 수정된 같은 객체를 가리키게 됨

리스트, 딕셔너리, Numpy의 배열

 

2. immutable 객체

객체를 생성한후 객체의 값을 수정 불가능 변수는 해당 값을 가진 다른 객체를 가리키게 된다.

숫자, 문자열, 튜플

 

 

저작자표시 비영리 변경금지 (새창열림)

'ComputerScience' 카테고리의 다른 글

[3분 지식] WAS 란? - WEB server와 WAS  (0) 2022.08.11
[3분 CS지식] Nginx 요약정리  (0) 2022.07.17
[3분 CS지식] CORS  (0) 2022.05.18
[10분 CS지식] Hoisting ( const, var, let )  (0) 2022.04.29
[10분 CS지식] 웹 브라우저의 요청 흐름  (0) 2022.04.24
    'ComputerScience' 카테고리의 다른 글
    • [3분 지식] WAS 란? - WEB server와 WAS
    • [3분 CS지식] Nginx 요약정리
    • [3분 CS지식] CORS
    • [10분 CS지식] Hoisting ( const, var, let )
    새벽_나그네
    새벽_나그네
    IT, 프로그래밍, 정보, 스마트스토어

    티스토리툴바