본문 바로가기
[파이썬]/[파이썬_응용]기타

[파이썬_영어공부]6. 세부설명(3)

by abooda 2022. 5. 10.
반응형

[파이썬_영어공부][6. 세부설명(3)-블로그 요약]

PC영어공부를 위한 작성한 파이썬 파일을 세부설명함.

작성된 영어단어 리스트에서 시험문제를 위하여 랜덤으로 문제를 추출함.

[파이썬_영어공부]6. 세부설명(3); 단어리스트에서 시험문제 추출

이번에는 영어공부를 위하여 작성한 파이썬 파일을 세부적으로 설명하겠습니다.

영어공부(영어시험) 시트에는 두가지 방식이 있습니다.

 

1. 신규로 단어를 추출하여 시험진행

2. 신규로 추출한 단어내에서 반복적으로 시험 진행

 

이번에는 신규로 단어를 추출하여 시험을 진행하는 방식에 대해서 좀 더 세밀하게 설명하겠습니다.

 

 

1. 단어리스트(원본) 불러오기

If문을 통해서 1번과 2번 항목으로 나눠서 진행합니다. 이번에는 1번 항목에 대해서만 알아 보겠습니다.

1. Pandas를 통해서 엑셀파일을 불러오기 - filename(영어공부를 위해 작성한 리스트)

2. 엑셀파일을 확인하고, 표 불러오기

-. sheet1.shape함수를 통해서 몇열, 몇행까지 입력되어 있는지를 확인

-. size[0]를 통해서 열의 값을 불러옴.

-. size[0] - 1를 통해서 제목의 값을 제외하고 전체의 단어 갯수를 확인함.

 

2. 문제 추출하기

단어리스트에서 영어시험을 볼 단어리스트를 추출함.

1. 번호로만 구성된 답안지와 문제지리스트를 만들기 위한 빈 리스트 만들기

-. po_list: 그룹핑을 진행한 문제지

-. set: 그룹핑을 안한 문제지

-. an_list: 답안지

 

2. 답안지 만들기

-. 문재 갯수(answer)에 맞추어 1부터 5번까지의 숫자에서 랜덤으로 숫자를 추출함.

-. 리스트로 작성

[출력값 -> 출제할 문제의 갯수를 3개로 했을때]

: 1번~5번까지의 숫자를 3번동안 랜덤으로 추출함.

3. 문제지 만들기

-. row = 전체 단어의 갯수

-. 중복된 랜덤숫자 제거하고 그룹핑을 하기 안한 문제번호를 리스트로 저장.

[입력값]

[출력값] --> 출제할 문제 3개 / 객관식 5개

: 총 15개의 번호를 전체의 문제리스트에서 랜덤으로 중복없이 추출함.

4. 추출한 문제를 엑셀에 저장하고 스타일 적용하기

 

3. 추출한 문제 그룹핑 하기

중복없이 랜덤으로 추출한 번호를 5개씩 그룹핑을 진행함.

그룹핑한 한개의 세트가 문제가 됨.

 

[입력값]

[출력값]

Grouping 하기 전의 리스트 상태

 

Grouping 후의 리스트 상태

 

[잠깐만!!]

답안지와 문제지 매칭

[답안지]

[문제지]

Grouping 후의 리스트 상태

[종합]

 

4. 엑셀 셀 간격 및 스타일 정하기

엑셀에 입력한 추출한 문제에 셀 간격 및 스타일을 적용함.

자세한 방법은 파이썬_엑셀편에서 자세히 설명함.

*** Your memories make your destiny ***

반응형

댓글