프로젝트 의 Python 스킬 트리

개인별 초대장 생성하기

참석자 CSV, 행사 정보, 템플릿으로 참석자별 HTML 초대장을 만드는 재사용 가능한 Python 생성 프로그램을 작성합니다. 문자를 올바르게 처리하고 이전 출력 묶음을 보존합니다.

프로젝트Python

💡 이 튜토리얼은 영어로 번역되었습니다. 원본을 보려면 영어로 전환

소개

개인별 초대장 생성하기는 Python 기초를 알고 구조화된 데이터를 유용한 파일로 바꾸고 싶은 학습자를 위한 실습 프로젝트입니다. 참석자 목록, 행사 정보, 준비된 HTML 템플릿을 결합해 참석자마다 열고 다운로드할 수 있는 디지털 초대장을 하나씩 만듭니다.

가이드 실습 하나에서 초대장 한 장을 만드는 작업부터 재사용 가능한 일괄 생성 프로그램까지 완성합니다. 독립 챌린지 하나에서는 같은 기법으로 다른 행사의 초대장을 준비합니다. 각 단원은 별도로 준비된 파일에서 시작합니다.

학습 내용

이 과정을 마치면 다음을 할 수 있습니다.

  • csv.DictReader로 UTF-8 참석자 CSV를 읽고 JSON에서 행사 정보를 읽습니다.
  • 참석자와 행사 필드를 string.Template의 텍스트 자리표시자 여섯 개에 연결합니다.
  • CSV 따옴표 처리와 HTML 이스케이프를 구분해 쉼표, 따옴표, Unicode, &와 < 같은 문자를 올바르게 텍스트로 표시합니다.
  • 고정된 참석자 ID를 파일명에 사용해 이름이 같은 사람의 초대장도 각각 보존합니다.
  • 새 묶음을 만들기 전에 필수 값, 안전하고 고유한 ID, 템플릿 렌더링을 검증하고 이미 있는 묶음은 덮어쓰지 않고 거부합니다.
  • 실제로 생성한 HTML 파일을 열고 다운로드하며 원본 CSV, 행사 정보, 템플릿, 이전 묶음을 보존합니다.

추천 대상

파일 기반 자동화와 개인별 콘텐츠 생성을 직접 연습하고 싶은 Python 학습자에게 적합합니다.

선수 지식: Python 문자열, 딕셔너리, 반복문, 함수를 이해하고 기본 터미널 명령을 입력할 수 있어야 합니다. 파일 처리, CSV와 JSON 읽기, UTF-8, HTML 텍스트 이스케이프는 가이드 실습에서 배웁니다.

학습 환경: LabEx는 브라우저 기반 WebIDE, Python, 준비된 프로젝트 파일, 스타일이 완성된 HTML 템플릿, 생성한 파일을 미리 볼 수 있는 수단을 제공합니다. 미리 보기의 레이블과 프로그램 출력은 영어로 유지됩니다.

자주 묻는 질문

소프트웨어를 설치하거나 웹 페이지를 디자인해야 하나요?

로컬 설치는 필요하지 않습니다. 페이지 디자인은 제공됩니다. 필드 연결, 검증, 참석자별 파일 생성에 집중하며 CSS와 고급 템플릿 프레임워크는 다루지 않습니다.

전체 애플리케이션을 처음부터 작성하나요?

아니요. 시작 프로그램에는 명령줄과 파일 쓰기 코드가 제공됩니다. 핵심 Python 로직을 완성하고 제공된 부분이 이를 어떻게 사용하는지 배웁니다.

참석자 데이터가 잘못되었거나 출력 묶음이 이미 있으면 어떻게 하나요?

새 묶음을 만들기 전에 필수 값 누락, 안전하지 않거나 중복된 참석자 ID, 렌더링 오류를 거부하는 방법을 배웁니다. 기존 묶음도 거부하므로 이전 작업을 보존하면서 입력을 고치거나 새 출력 디렉터리를 선택할 수 있습니다.

이 프로젝트는 이메일을 보내거나 종이 초대장을 만드나요?

결과물은 재사용 가능한 생성 프로그램과 열고 다운로드할 수 있는 실제 디지털 HTML 초대장입니다. 이메일 발송, 인쇄, PDF 생성은 다루지 않습니다.

챌린지는 가이드 실습을 어떻게 확장하나요?

배운 절차를 다른 행사와 참석자 목록에 적용합니다. 이름이 같은 참석자와 CSV 따옴표 처리 또는 HTML 이스케이프가 필요한 텍스트도 포함됩니다. 새로운 묶음 전체를 만들고 제공된 입력과 이전 출력을 보존해야 합니다.

강사

labby
Labby
Labby is the LabEx teacher.