파이썬 - 함수와 람다 표현식

bob_ssso·2022년 1월 9일

파이썬

목록 보기
6/9

🤠  함수

  • 파라미터의 변수 직접 지정 가능. 순서 상관 x.
  • 여러 개의 반환 값 가능

global 키워드

해당 함수에서 지역변수X.
함수 바깥에 선언된 변수를 바로 참조하게 됨.

a = 10 
def func():
	global a
	a += 1
for i in range(10):
	func()
print(a) # → 20
  • 만약에 global 안하면?
    a = 10 
    def func():
    	a = 0
    	a += 1
    for i in range(10):
    	func()
    print(a) # → 10
  • 전역 변수 리스트는 꼭 global 안해도 됨!
    arr = [1,2,3]
    def func(): 
    	arr.append(4)
    	print(arr)
     func() # → [1,2,3,4]

🤠  람다 표현식

함수 간단하게 작성. 한 줄에 올큐 print( (lambda a , b : a + b) ( 3 , 7 ) )

  • 내장함수(ex. sorted)에서 자주 사용됨
array = [('가', 3),('나', 1),('다', 2)]
def my_key(x) : return x[1] # 튜플 2번째 원소로 정렬
print(sorted(array, key = my_key)) # 정렬 기준을 함수로 설정
print(sorted(array, key = (lambda x: x[1])) # → [('나', 1),('다', 2),('가', 3)]
  • 여러 개의 리스트에 적용
list1 =[1,2,3]
list2 =[7,8,9]
result = map(lambda a, b: a + b, list1, list2)
print(list(result)) # → [8,10,12]
profile
밥소🐈

0개의 댓글