기본 콘텐츠로 건너뛰기

추천 가젯

리액트 + 비트(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 바인딩 추가: ...

파이썬 reversed() 함수로 리스트 역순 순회하기

파이썬 reversed() 함수로 리스트 역순 순회하기 🔁

파이썬의 reversed() 함수는 리스트를 뒤에서부터 순회할 수 있게 해주는 내장 함수입니다. 원본 리스트를 변경하지 않고도 효율적으로 역순 처리를 할 수 있어요.

Python reversed icon

✅ 기본 사용법

# reversed() 기본 사용
numbers = [1, 2, 3, 4, 5]
for n in reversed(numbers):
    print(n)

✅ reversed()는 이터레이터 반환

# reversed()는 이터레이터 반환
rev = reversed(numbers)
print(list(rev))  # [5, 4, 3, 2, 1]

✅ 슬라이싱 방식과 비교

# 슬라이싱과 비교
print(numbers[::-1])  # [5, 4, 3, 2, 1]

✅ 원본 데이터는 그대로 유지됨

# reversed()는 원본 리스트를 변경하지 않음
print(numbers)  # [1, 2, 3, 4, 5]

reversed()는 메모리 낭비 없이 순회만 역순으로 하고 싶을 때 적합하며, 슬라이싱보다 명확한 의도를 전달할 수 있어 가독성에도 도움이 됩니다.

정렬이 아닌 순회만 반대로 하고 싶다면? reversed()를 써보세요. 직관적이고 메모리도 아낄 수 있습니다. 🧠

Icons by Flaticon

댓글

가장 많이 본 글

Icons by Flaticon