재귀,지역변수,전역변수,return,lambda,map,filter,reduce

2018. 1. 4. 14:46Study/python

함수가 자기 자신을 호출하는 재귀적 용법

>>> def countdown(n):

if n == 0:

print ('end')

else:

print (n)

countdown(n-1)


>>> countdown(5)

5

4

3

2

1

end


지역변수, 전역변수

지역변수 - 함수안에서의 변수, 오로지 함수안에서만 효과가 있다.

전역변수 - 함수를 벋어나 전영역에서 효과가 있다.



return

>>> def function(x):

a = 3

b = 6

y = a * x / b

print (y)

return y


>>> d = function(3)

1

>>> d

1


lambda (인자 : 표현식)

>>> (lambda x,y : x + y)(5, 7)

12


map (함수 , 리스트)

리스트에서 나온 것을 하나씩 함수에 대입해서 다시 리스트로 보여준다.

>>> map(lambda x : x ** 2, range(3))

[0, 1, 4]


reduce (함수, 순서형 자료)

순서형 자료를 하나씩 더해줌

>>> reduce(lambda x,y : x + y, [0, 1, 2, 3, 4])

10


filter (함수 , 리스트)

함수에 나온결과를 이용해 리스트에서 걸러준다.

>>> filter(lambda x : x < 5 , range(10))

[0, 1, 2, 3, 4]


>>> filter(lambda x: x % 2, range(10))

[1, 3, 5, 7, 9]

'Study > python' 카테고리의 다른 글

while / if /for  (0) 2018.01.02