Python - np.array vs list
python에는 데이터를 다루기 위해 주요 쓰이는 주요한 자료구조가 있습니다. ## 서로의 동작이 사실 좀 다릅니다. 자세한 내용은 다음에... ## list 선언. a = list([1, 2, 3]) a = [1, 2, 3] ## set 선언. b = set([1, 2, 3]) b = {1, 2, 3} ## tuple 선언. c = tuple([1, 2, 3]) c = (1, 2, 3) ## dict 선언 d = dict(k1=1, k2=2, k3=3) d = {"k1": 1, "k2": 2, "k3": 3} List, set, tuple, dict은 다음과 같은 특징을 가지고 있습니다. Type 특징 List 수정, 중복데이터를 허용한다. Set 중복데이터는 허용하지 않는다. Tuple 수정이 불가능..
Python - Mutable vs Immutable
* 바쁘신 분들을 위한 3줄 요약 1. mutable이란, "메모리 주소를 유지한 채 값을 변경할 수 있다"란 뜻이다. 2. list, dict 등은 변경 가능(mutable)하며 3. int, float, string, tuple 등은 변경 불가능(immutable)하다. Mutable, Immutable은 무슨 뜻일까? mutable은 변경가능이란 뜻이며 immutable은 변경 불가능이란 뜻입니다. python에서 변경 가능(mutable)한 Data Type으로는 list, dict 등이 있으며, 변경 불가능(immutable)한 Data Type으로는 int, float, string, tuple 등이 있습니다. 하지만 이 정도의 설명으로는 오해를 하기 쉽습니다. int는 정말로 변경이 불가능한..
Python - List는 어떻게 데이터를 관리하는가?
*바쁘신 분들을 위한 3줄 요약 1. List는 데이터가 저장된 주소들의 나열이다. (C언어 Level에서 이중포인터) 2. 데이터 주소만 List에 저장하기 때문에, 데이터 Type이 어떤 것이던지 List로 다룰 수 있음. 3. List는 데이터를 직접 다루는 게 아니기 때문에, Array에 비해 데이터를 다루는데 시간이 오래 걸린다. List는 어떠한 Data Type도 원소로 다룰 수 있다. Python에서 List를 다루다 보면, 다양한 Type에 대해서도 잘 동작하는 것을 경험합니다. >>> import numpy as np >>> a = [1,2.2,(3,4), "5", np.array([6,7]), {"key8": 9}, 10] >>> print(a) ## list에 int, float, ..