기본 콘텐츠로 건너뛰기

추천 가젯

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

파이썬 chr()와 ord() 함수로 문자와 아스키 코드 변환하기

파이썬 chr()와 ord() 함수로 문자와 아스키 코드 변환하기 🔡

파이썬에서 chr()ord()는 문자와 숫자(아스키 코드, 유니코드)를 서로 변환할 수 있게 해주는 내장 함수입니다.

Python ASCII char icon

✅ 문자 → 숫자: ord()

# 문자 → 숫자 (아스키 코드)
print(ord('A'))  # 65
print(ord('a'))  # 97

✅ 숫자 → 문자: chr()

# 숫자 → 문자
print(chr(65))   # 'A'
print(chr(97))   # 'a' 

✅ 알파벳 전체 출력하기

# 알파벳 전체 출력
for i in range(ord('A'), ord('Z') + 1):
    print(chr(i), end=' ')  # A B C ... Z

✅ 시저 암호 예제

# 간단한 시저 암호 (대문자 기준)
def caesar_encrypt(text, shift):
    result = ''
    for char in text:
        if char.isupper():
            result += chr((ord(char) - 65 + shift) % 26 + 65)
        else:
            result += char
    return result

print(caesar_encrypt("HELLO", 3))  # KHOOR

ord()chr()는 문자열 처리, 암호화, 정렬 알고리즘 등 다양한 분야에서 매우 유용하게 쓰이는 함수입니다. 알고리즘 문제 풀이에서도 자주 등장하니 꼭 익혀두세요!

문자의 본질은 숫자다. chr()와 ord()를 알면 문자열 로직이 훨씬 쉬워집니다. 🚀

Icons by Flaticon

댓글

가장 많이 본 글

Icons by Flaticon