본문 바로가기

파이썬23

6주차, 파이썬 내장함수(enumerate, zip, map, filter) enumerate() 반복문을 사용할 때 enumerate를 사용하면 인덱스를 받을 수 있다. for index, i in enumerate(이터레이터): print(index) print(i) 이걸 돌리면 index는 객체의 인덱스, i는 반복중인 객체를 반환한다. zip() 이터레이터를 넣으면 이터레이터들을 짝지어서 튜플에 넣은 제네레이터로 반환한다. list1 = [1, 2, 3, 4] list2 = [5, 6, 7, 8] zip(list1, list2) 결과 // list(zip(list1, list2)) 결과 // [(1, 5), (2, 6), (3, 7) (4, 8)] for i, j in zip(list1, list2): print(i) print(j) // 1 5 2 6 3 7 4 8 ma.. 2022. 1. 24.
5주차 lambda 함수 lambda함수란 이름없는 한줄짜리 함수다, 아래와 같이 작성 lambda 인수 나열 : 반환할 내용 인수가 없으면 생략 가능 예시 lambda x,y: x+y 함수의 인수로 함수를 넣을 수 있으니 람다식을 활용할 수 있다. def run(func, x): print(func(x)) run(lambda x: x+1, 1) func에 람다식이 대입되고, x에 1이 대입되었다. 그럼 1에 1을 더한 2가 프린트되고 종료된다. 2022. 1. 20.
5주차 1, *변수, **변수와 함수에서 활용법 *는 복수의 데이터를 가진 변수다. a = [1, 2, 3, 4, 5] b, *c = a print(b, c) // 1, [2, 3, 4, 5] 의 형태로 b에는 a의 요소가 하나 대입되고, c에는 복수의 데이터가 들어갈 수 있으니 나머지 [2, 3, 4, 5]가 모두 대입되었다. 반대로 *b, c = a 의 경우 b == [1, 2, 3, 4] // c == 5 // 의 결과가 나온다. 하지만, *변수가 함수의 매개변수가 될 경우, (a, b*)와 같이 일반 변수가 앞에 나오고 마지막에 *변수가 사용되면 문제가 없지만, (a*, b)와 같이 *변수가 먼저 사용되고 일반 변수가 들어가면 에러가 발생한다. **변수는 키: 밸류의 형태인 매핑변수가 여러 개 들어갈 경우 사용된다. def body(height.. 2022. 1. 19.