본문 바로가기
Python

실습 과제: 수강생 관리 엑셀 만들기

by 헬로제이콥 2026. 1. 5.

Python openpyxl 실습 과제: 수강생 관리 엑셀 만들기

다음 요구사항에 맞춰 파이썬 코드를 작성하고 엑셀 파일을 생성하세요.

[미션 1: 워크북 초기 설정]

  1. openpyxl 라이브러리에서 Workbook을 임포트하세요.
  2. 새로운 워크북(wb)을 생성하세요.
  3. 현재 활성화된 시트를 선택하여 ws 변수에 할당하세요.
  4. 해당 시트의 이름을 **"수강생_정보"**로 변경하세요.

[미션 2: 데이터 입력 (기본)]

  1. A1 셀에 '이철수'라는 데이터를 입력하세요.
  2. B5 셀에 '홍길동'이라는 데이터를 입력하세요.
  3. append 함수를 사용하여 **'유관순'**이라는 데이터를 새로운 행에 추가하세요.
  4. 다시 append 함수를 사용하여 한 행에 ['김유신', '35세', '광주'] 데이터를 한꺼번에 추가하세요.

[미션 3: 시트 추가 및 정밀 제어]

  1. **"엑셀 연습"**이라는 이름의 새로운 시트를 추가하고 ws2 변수에 할당하세요.
  2. ws2 시트의 B3 셀에 '홍길동'을 입력하세요 (셀 주소 방식 사용).
  3. cell() 메서드를 사용하여 4행 2열(B4) 위치에 '아이유'라는 값을 입력하세요.

[미션 4: 마무리]

  1. 완성된 워크북을 **'수강생_리스트.xlsx'**라는 이름의 파일로 저장하세요.
  2. 모든 작업이 끝났으므로 워크북을 닫아주세요.

 

정답예시 ------------

from openpyxl import Workbook

# [미션 1: 워크북 초기 설정]
kb = Workbook()  # 새로운 워크북 생성
ks = kb.active   # 현재 활성화된 시트 선택
ks.title = "학생_정보"  # 시트 이름 변경

# [미션 2: 데이터 입력 (기본)]
ks['A1'] = '이철수'  # A1 셀 데이터 입력
ks['B5'] = '홍길동'  # B5 셀 데이터 입력
ks.append(['유관순'])  # '유관순' 데이터를 새로운 행에 추가
ks.append(['김유신', 20, '컴퓨터 공학'])  # 리스트 형태로 한 행에 데이터 추가

# [미션 3: 시트 추가 및 정밀 제어]
ks2 = kb.create_sheet("추가_정보")  # 새로운 시트 추가 및 할당
ks2['B3'] = '이길흥'  # 셀 주소 방식 사용

# cell() 메서드를 사용하여 4행 2열(B4)에 값 입력
# 주의: cell() 메서드 하나에 여러 값을 넣을 수 없으므로, 
# 요구사항의 값들을 문자열로 합치거나 각각의 열에 나누어 입력해야 합니다.
# 여기서는 요청하신 형태 그대로 문자열로 입력하는 예시입니다.
ks2.cell(row=4, column=2, value="이길흥, 25, 전자과")

# 파일 저장
kb.save("학생정보_리포트.xlsx")
print("엑셀 파일이 성공적으로 생성되었습니다.")