본문 바로가기
728x90
반응형

Python16

Python 숫자 나누기 특징 파이썬 3에서 int 나누기 int 의 결과값은 수학적으로 나누어떨어지더라도 항상 float 로 나온다. print(20/5) -> 4.0 2022. 6. 13.
Python list 관련 b = [1, 2, 3] print(f'{b = }') -> b = [1, 2, 3] print(f'b = {b}') 로 하지 않고 {b = } 으로만 해도 b = [1, 2, 3] 로 출력된다. b[1] = ['a', 'b', 'c'] print(f"b[1] = ['a', 'b', 'c'] 인 경우 {b = }") -> b[1] = ['a', 'b', 'c'] 인 경우 b = [1, ['a', 'b', 'c'], 3] b[1:2] = ['a', 'b', 'c'] print(f"b[1:2] = ['a', 'b', 'c'] 인 경우 {b = }") -> b[1:2] = ['a', 'b', 'c'] 인 경우 b = [1, 'a', 'b', 'c', 3] list의 값을 변경하고 싶을 때에는 인덱스 접근이 아.. 2022. 6. 13.
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.
728x90
반응형