기본 콘텐츠로 건너뛰기

추천 가젯

리액트 + 비트(Vite)로 모바일 청첩장 만들기 — 2편

모바일 청첩장 시리즈 2편 · R2 갤러리 & Firebase 방명록 Cloudflare R2 · Functions Firebase Firestore 클라우드플레어 R2로 갤러리 저장하고, Firebase로 방명록 달기 안녕하세요, 병민입니다 🙌 1편에서 전체 흐름을 잡았고, 이번엔 사진 업로드/보관 과 방명록 을 연결합니다. 서버는 따로 없고 Cloudflare Pages 를 쓰고 있으니, Pages Functions (= 워커)로 R2에 사전서명 URL을 만들어주고, 프론트에서 그 URL로 바로 업로드하는 구조예요. 방명록은 Firebase DB로 간단·안전하게! 전체 그림 프론트(React) → /api/r2/upload 로 업로드용 URL 요청 → R2에 파일 PUT 프론트(React) → /api/r2/list 로 목록 요청 → 갤러리 렌더 프론트(React) → Firebase SDK로 방명록 작성/조회 1) R2 버킷 & Pages Functions 준비 Cloudflare 대시보드 > R2 > Create bucket (예: wedding-gallery ) 버킷 > Settings > CORS 에서 사이트 도메인 허용(예: https://*.pages.dev , 커스텀 도메인) Pages 프로젝트 > Settings > Functions 에서 R2 바인딩 추가: ...

파이썬 lambda 표현식 심화: map, filter, sorted와 함께 쓰기

파이썬 lambda 표현식 심화: map, filter, sorted와 함께 쓰기 🔥

lambda는 한 줄로 간단하게 함수를 표현할 수 있는 파이썬 문법입니다. map(), filter(), sorted() 같은 함수형 스타일과 결합하면 코드를 더욱 간결하고 깔끔하게 만들 수 있어요.

lambda function icon

✅ lambda와 map(): 리스트 변환하기

map()은 리스트의 각 요소에 함수를 적용하는 함수입니다.

# lambda와 map: 리스트 변환
nums = [1, 2, 3, 4]
squared = list(map(lambda x: x**2, nums))
print(squared)  # [1, 4, 9, 16]

✅ lambda와 filter(): 조건에 맞는 요소 걸러내기

filter()는 리스트에서 조건을 만족하는 요소만 걸러냅니다.

# lambda와 filter: 조건 필터링
nums = [1, 2, 3, 4, 5, 6]
even = list(filter(lambda x: x % 2 == 0, nums))
print(even)  # [2, 4, 6]

✅ lambda와 sorted(): 정렬 기준 지정하기

sorted()key 매개변수로 lambda를 주면 다양한 기준으로 정렬할 수 있어요.

# lambda와 sorted: 정렬 기준 지정
words = ["banana", "apple", "cherry"]
sorted_words = sorted(words, key=lambda x: len(x))
print(sorted_words)  # ['apple', 'banana', 'cherry']

lambda 표현식은 짧은 함수를 작성할 때 매우 유용하지만, 복잡한 로직에는 일반 함수를 사용하는 것이 가독성 측면에서 더 좋습니다. map, filter, sorted와 함께 lambda를 적절히 사용하면 코드가 한결 깔끔해져요!

짧고 명확한 코드가 강한 코드를 만듭니다. lambda를 잘 활용하면, 당신의 코드는 한층 더 세련되어집니다. 🚀

Icons by Flaticon

댓글

가장 많이 본 글

Icons by Flaticon