본문 바로가기
728x90
반응형

Python19

Python 변수, 객체, 메모리영역, 참조 변수는 stack, 객체는 heap에 존재 a = 1 id(a)는 변수 a에 대한 id가 아니고 a가 가리키는 1이라는 객체의 id이다. b = 1 id{a)와 id(b)는 같다. 단, 256까지만. 257부터는 별개의 객체가 힙 메모리에 할당된다. a = 257 b = 257 id(a)와 id(b)는 같다. 출처 https://blog.naver.com/PostView.naver?blogId=myca11&logNo=222611107006&proxyReferer=undefined https://angangmoddi.tistory.com/76 https://wikidocs.net/2836 2022. 6. 12.
Python mutable, immutable, 클래스 default param, 얕은복사 클래스 내부에 default param을 넣고 싶으면 __init__ 메소드에 넣으면 된다. mutable(가변) : list, dic, set, class immutable(불변) : 숫자, string, tuple None 메소드에 default param 설정할 때 def aaa(data = p[1, 2, 3]): 처럼 mutable object가 들어가면 얕은 복사가 일어난다. taxi2와 taxi3 인스턴스를 만들 때 아무 값도 주지 않아 __init__ 메소드에서 customer = [] 가 사용되었다. 이 때 []는 mutable object(list) 여서 얕은 복사가 일어나 taxi2와 taxi3가 같은 [] 를 가리키게 된다. 출처 https://testspoon.tistory.com/.. 2022. 6. 12.
Python iterable, iterator iterable - 여러개의 값을 가지는 객체. - 반복 가능한 객체. - for문에 넣어서 돌릴 수 있는 것. - list, tuple, dic, set, string 모두 iterable한 객체이다. iterator - iter() 내장함수를 통해 iterable 한 객체로부터 iterator를 만들 수 있다. - iterator의 내장함수 next()를 통해 하나씩 데이터에 접근하고 현재 상태값을 저장한다. - iterator는 1회용 객체이다. 모든 데이터에 접근이 끝나면 없어진다. - iterator는 독립적인 객체이다. ex) a = [1, 2, 3] i1 = iter(a) i2 = iter(a) -> i1 과 i2 는 다르다. i1을 2번 print 하면 3이 남아 있고 i2를 1번 prin.. 2022. 6. 11.
python remove(), del, pop() a = [1, 2, 3] a.remove(1) : 데이터 접근 -> [2, 3] del a[1] : 인덱스 접근 -> [1, 3] a.pop(1) : 인덱스 접근 -> [1, 3] a.pop() : 아무 인자를 안주면 맨 뒤에 값 추출 후 삭제 -> [1, 2] 2022. 6. 11.
728x90
반응형