filter(), map()
filter() filter(function, list)는 시퀀스의 항목들 중 함수조건이 참(True)인 항목만 추출해 구선된 시퀀스를 반환한다 >>> def f(x): return x%2 != 0 and x%3 != 0 >>> f(33) False >>> f(17) True >>> list(filter(f, range(2, 25))) [5, 7, 11, 13, 17, 19, 23] # 상동. list(), filter() 대신 사용 >>> r = [f(x) for x in range(2, 25)] [5, 7, 11, 13, 17, 19, 23] map() map(function, list)는 시퀀스의 모든 항목에 함수를 적용한 결과리스트를 반환한다 >>> def cube(x): return x*x*x ..
2020. 10. 5.
generator, iterator, yield
python에서 generator는 interator를 작성하는 편리한 방법이다 호출자가 메서드를 호출할 때, return 은 반환값을 반환하고 메서드를 종료한 후, 호출자에게 제어를 반환한다 yield 는 각 반화값을 호출자에게 반환하고, 반환값이 모두 소진되었을 때에만 메서드가 종료된다 generator 제너레이터는 파이썬의 시퀀스를 생성하는 객체다 전체 시퀀스를 한 번에 메모리에 생성하고 정렬할 필요엾이, 잠재적으로 아주 큰 시퀀스를 순회할 수 있다 제너레이터를 순회할 때마다 마지막으로 호출된 요소를 기억하고 다음 값을 반환한다 def fib_generator(): a, b = 0, 1 while True: yield b a, b = b, a+b if __name__ = "__main__": fg ..
2020. 9. 30.
input(), sys.stdin - 코딩테스트 시 입력받기
외부 입력을 받을 때, 코딩테스트 시 초기값 받을 때 많이 사용 input()은 사용편리, 속도는 sys.stdin.realine()이 빠름 입력값이 크거나 많다면, sys.stdin.realine()을 사용하는 걸 추천 data = list(map(str, input().split())) #data = [str(c) for c in input().split()] # 위라인과 같음 import sys data1 = list(map(str, sys.stdin.readline().rstrip())) #data1 = [str(c) for c in sys.stdin.readline().rstrip()] # 위라인과 같음 1 2 3 4 5 6 7 8 9 0 >>> data ['1', '2', '3', '4', '..
2020. 9. 24.