윤인선님 강의 [25~35 피보나치]

2021. 8. 1. 14:02python/파이썬

728x90

25. 범위(range)와 반복문
-range(시작,끝,단계)
list(range(0, 10, 1)) 
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] *끝숫자는 포함되지 않음
-range는 정수밖에 못들어 온다
-역순으로 for i in reversed(range(10)) 를 많이 사용

26. while반복문
while <불표현식>:
while 조건 :
 
27. break & continue
- 반복문 내부에서만 사용할수 있다
- continue - 반복문 루프내의 나머지 실행부를 건너띈다
- break    - 반복을 종료하고 싶을때
if number <  10
continue #number가 10보다 작은 경우 건너띈다

30.리스트 내포(List Comprehension)
-말 그대로 리스트 안에 for문을 돌려 만듬

array = [i * i for i in range(0, 20, 2)]

-조건문도 가능
array = [i for i in range(10) if i % 3 == 0]

31.함수
함수를 사용한다 = 함수 호출 = function call
함수 괄호 들어오는 값 = 매개변수
함수의 결과 = 리턴

ex)len("안녕하세요")      len-함수호출, 안녕하세요=매개변수
#5                     5= 리턴

return = 왔던 곳으로 돌아가라 !!
return 뒤에 값을 넣으면 같이 들고 돌아간다

32.가변 매개변수와 기본 매개변수

-가변 매개변수 = 매개변수의 수가 유동적으로 변하는 함수 (매개변수 숫자 무한)
def 함수이름(매개변수1, 매개변수2, *가변매개변수)
(1)가변 매개변수는 함수당 한개만
(2)가변 매개변수는 무조건 마지막위치에

-기본 매개변수 
def 함수이름(value, n=5)
(1)기본 매개변수 뒤에는 일반적인 매개변수가 올수없다, 역시 마지막에

(2)n에 아무것도 입력하지 않았을때 기본값은 5

호출방법 function(n=7) 
기본 매개변수에 값을 넣어준다

33.매개변수 정리

매개변수 순서 = def function(일반매개1, 일반매개2, *가변매개, 기본매개a=10, 기본매개b=20)

기본 매개변수에 값을 넣을려면 기본매개a=30와 같이 지정해서 넣어줘야한다


34.return

def 함수(매개변수):
변수 = 초깃값
#여러가지처리
return 변수

pure function(순수한함수) = 어떠한 상황에도 영향을 받지 않고 같은 말을 하는 함수

35.재귀함수와 메모화
재귀함수 : 함수내부에서 함수를 호출

factorial = n!    
3! = 1 * 2 * 3 와같이 n 밑으로 계속 곱한다

(1) def factorial(n):
변수 = 1
for i in range(1, n+1)
변수*= i
return 변수

(2)
def factorial(n):
 if n == 0:
  return 0
 else:
  return n * factorial(n-1)

피보나치수열


(1)재귀 함수로 구하면 구했던 값을 또 구해 어처구니 없이 많이 실행하여
실행 시간이 너무 길다

 

(2)메모화 (memorization)

 

조기리턴

조건에 충족했으면 먼저 reurun