목록python (4)
코딩 성장기
피보나치 수열이란? 세개의 항이 있을때, 첫번째 항과 두번째 항의 합이 세번째 항의 되는 수열. 첫번째 항과 두번째 항의 값은 모두 1이다. 세번째 항 = 첫번째 항 + 두번째 항 = 1 + 1 = 2 네번째 항 = 두번째 항 + 세번째 항 = 1 + 2 = 3 다섯번째 항 = 세번째 항 + 네번째 항 = 2 + 3 = 5 ... # n번째 피보나치 수열 구하기 def fib(n): if (n == 1) or (n ==2): return 1 return fib(n-1)+fib(n-2)

재귀적으로 문제를 푼다? →같은 형태의 더 작은 문제를 풀고(부분 문제), 부분 문제의 답을 이용해서 기존 문제를 푸는것. 이 때 가장 작은 문제를 base case, 계속 반복되는 문제를 recursive case 라고 한다. 예) 팩토리얼(!) 4!을 구하기 위해서는 4! = 4 x 3 x 2 x 1 ☞3! 값이 필요하다. = 3! 3! = 3 x 2 x 1 ☞ 2! 값이 필요하다. = 2! 2! = 2 x 1 ☞1! 값이 필요하다 = 1! 1! = 1 x 0 = 0! = 1 4!을 구하기 위해 필요한 부분문제들이 모두 풀렸으므로, 각 결과들을 역순으로 이용하여 값을 도출한다. 0! = 1 임을 이미 알고 있으므로, 재귀함수에 설정을 해놓고 n = 0 인 경우에는 값이 1이 도출되도록 한다. n = ..
list와 달리 numpy.ndarray에 연산자를 붙여주면, 각 element 마다 연산이 적용된다. 예) import numpy as np list_1 = [1, 2, 3, 4, 5] array_1 = np.array(list_1) print(array_1 + 2) print(array_1 * 2) array_1 *2 *결과 [3 4 5 6 7] [2 4 6 8 10] array([2 4 6 8 10]) ☞print 함수를 쓰지 않으면 이렇게 출력된다! 리스트와 다름을 나타냄. numpy의 계산 기능과 비슷하게, 각 element 마다 불린 계산이 적용된다. 예) import numpy as np list_1 = [1, 2, 3, 4, 5] array_1 = np.array(list_1) print(..
보통 데이터 사이언스 분야에서는 R 또는 파이썬을 주로 사용하는데, 우리는 파이썬을 이용한 크롤링에 대해서 공부할 것이다. 크롤링의 기초가 되는 모듈 중 하나인 numpy에 대해 다뤄보도록 할 것이다. numerical python의 줄임말로, 숫자와 관련된 파이썬 도구이다. 파이썬의 리스트(list)와 유사한 numpy array의 element 계산을 편리하게 할 수 있게 돕는다. 파이썬의 리스트와 유사하게 생겼다.(똑같이 생겼다고 봐도 무방!) 왜냐하면 리스트에 numpy 모듈의 numpy.array 함수를 불러와서 사용하기 때문! 예) list_1 = [1, 2, 3, 4, 5] array_1 = numpy.array(list_1) print(array_1) type(array_1) 결과 [1, ..