๐Ÿ“–filter

iterable์˜ ๊ฐ ์š”์†Œ ํ•˜๋‚˜ํ•˜๋‚˜์— ์ ‘๊ทผํ•ด์„œ ํ•จ์ˆ˜ ์ˆ˜ํ–‰ ํ›„ True์ธ ๊ฐ’๋งŒ ํ•„ํ„ฐ๋งํ•ด ๋‹ค์‹œ ๋ฆฌ์ŠคํŠธ๋กœ ๋งŒ๋“ค์–ด์ฃผ๋Š” ํ•จ์ˆ˜

filter(function, iterable)
  • function : ๊ฐ ์š”์†Œ์— ์ ์šฉํ•  ํ•จ์ˆ˜ iterable : ํ•จ์ˆ˜๋ฅผ ์ ์šฉํ•  ๋ฐ์ดํ„ฐ ์ง‘ํ•ฉ
  • filter ๊ฐ์ฒด๋กœ ๋ฐ˜ํ™˜

๐Ÿ“–์‚ฌ์šฉ ์˜ˆ์‹œ

๐Ÿ“Žํ™€์ˆ˜๋งŒ ๋‚จ๊ธฐ๊ธฐ with lambda

filterํ•จ์ˆ˜๋กœ ์‹œํ€€์Šค์˜ ๋ชจ๋“  ์š”์†Œ ์ค‘์—์„œ ์กฐ๊ฑด์— ๋งž๋Š” ์š”์†Œ๋งŒ์„ ๋ฐ˜ํ™˜ํ•  ๋•Œ, lambdaํ•จ์ˆ˜๋กœ ์กฐ๊ฑด ์ง€์ •

nums = [1, 2, 3, 4, 5]
 
lambda_list = list(filter(lambda x: x%2, nums)) # [1, 3, 5]

filter ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด?

nums = [1, 2, 3, 4, 5]
result = []
for num in nums:
    if num%2:
        result.append(num)