[Python] List Comprehension
list comprehension은 기존 list를 사용하여 간단히 다른 list를 만드는 기법이다. 즉, 리스트를 쉽게, 짧게 한 줄로 만들 수 있는 파이썬 문법이다. 일반적으로 for + append 보다 속도가 빠르다. 예시1 number = [] for i in range(10): number.append(i) print(number) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 위의 for + append를 list comprehension형태로 나타내면 다음과 같다. number = [i for i in range(10)] print(number) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 예시2 filter를 사용한 list comprehension이다. 조건(..
[Python] iterable과 iterator
1. Iterable iterable 객체: 반복 가능한 객체 대표적으로 iterable한 타입 - list, dict, set, str, bytes, tuple, range collections.iterable에 속한 instance인지의 확인을 통해 iterable 객체인지 판별할 수 있다. >>> import collections # iterable 한 타입 >>> var_list = [1, 3, 5, 7] >>> isinstance(var_list, collections.Iterable) True >>> var_dict = {"a": 1, "b":1} >>> isinstance(var_dict, collections.Iterable) True >>> var_set = {1, 3} >>> isins..
[Python] 'is'와 '=='의 차이
is는 변수가 같은 Object(객체)를 가리키면 True이고, ==는 변수가 같은 Value(값)을 가지면 True이다. 예시 a = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'] b = a c = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'] print(a==b, a is b) # True True print(a==c, a is c) # True False a와 b, 그리고 a와 c 모두 같은 값들을 가진 리스트이기 때문에 a==b와 a==c 모두 True a와 b는 같은 리스트 객체이기 때문에 True, 하지만 a와 c는 다른 객체이기 때문에 False 참고: https://twpower.github.io/117-difference-between..