Notice
														
												
											
												
												
													Recent Posts
													
											
												
												
													Recent Comments
													
											
												
												
													Link
													
											
									| 일 | 월 | 화 | 수 | 목 | 금 | 토 | 
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 | 
| 12 | 13 | 14 | 15 | 16 | 17 | 18 | 
| 19 | 20 | 21 | 22 | 23 | 24 | 25 | 
| 26 | 27 | 28 | 29 | 30 | 31 | 
													Tags
													
											
												
												- MySQL
- flutter
- 맛집
- Unity
- ASP
- swift
- GIT
- 유니티
- IOS
- MS-SQL
- Excel
- mssql
- python
- pandas
- PER
- javascript
- tensorflow
- PyQt5
- 다이어트
- port
- 날짜
- Linux
- ubuntu
- 함수
- 라즈베리파이
- sqlite
- 리눅스
- node.js
- PyQt
- urllib
													Archives
													
											
											
											
											아미(아름다운미소)
python filter 본문
filter 함수는 첫 번째 인수로 함수 이름을, 두 번째 인수로 그 함수에 차례로 들어갈 반복 가능한 자료형을 받습니다. 그리고 두 번째 인수인 반복 가능한 자료형 요소들이 첫 번째 인수인 함수에 입력되었을 때 리턴값이 참인 것만 묶어서(걸러내서) 리턴합니다.
예
def positive(l): 
    result = [] 
    for i in l: 
        if i > 0: 
            result.append(i) 
    return result
print(positive([1,-8,2,0,-9,6]))
결과: [1, 2, 6]
positive 함수는 리스트를 입력값으로 받아 각각의 요소를 판별해서 양수값만 리턴하는 함수입니다.
filter 함수를 이용하면 위의 내용을 아래와 같이 간단하게 작성할 수 있다.
예
def positive(x):
    return x > 0
print(list(filter(positive, [1, -7, 2, 0, -8, 6])))
결과 : [1, 2, 6]
여기서는 두 번째 인수인 리스트의 요소들이 첫 번째 인수인 positive 함수에 입력되었을 때 리턴값이 참인 것만 묶어서 돌려줍니다. 앞의 예에서는 1, 2, 6만 양수여서 x > 0 이라는 문장이 참이 되므로 [1, 2, 6]이라는 결과값을 리턴하게 된 것입니다.
lambda를 이용하면 더욱 간편하게 코드를 작성할 수 있습니다.
예
list(filter(lambda x: x > 0, [1, -4, 2, 0, -5, 6]))
결과 : [1, 2, 6]
'랭귀지 > python' 카테고리의 다른 글
| python enumerate 함수 (0) | 2019.04.06 | 
|---|---|
| python for in list (0) | 2019.04.05 | 
| python with open을 써서 파일을 여러 개 open하는 법 (0) | 2019.04.02 | 
| [PYTHON] MULTIPART FILE UPLOAD (0) | 2019.03.29 | 
| Consider using the `--user` option or check the permissions. (0) | 2019.03.25 | 
			  Comments