티스토리 뷰
지금까지 배운 내용을 복습하기 위한 퀴즈를 드리겠습니다. 직접 한 번 풀어보시고 나서 정답을 확인해주세요.
Quiz) 당신의 회사에서는 매주 1회 작성해야 하는 보고서가 있습니다. 보고서는 항상 아래와 같은 형태로 출력되어야 합니다.
- X 주차 주간보고 - 부서 : 이름 : 업무 요약 :
1주차부터 50주차까지의 보고서 파일을 만드는 프로그램을 작성하시오. |
완성된 코드를 실행시키면 소스코드와 동일한 위치에 다음과 같이 50개의 파일이 생기면 됩니다.
1주차.txt 2주차.txt 3주차.txt ... 50주차.txt |
그리고 각 파일에는 해당 주차에 해당하는 주간보고 내용이 포함됩니다.
(예 : 35주차.txt 파일 내용) - 35 주차 주간보고 - 부서 : 이름 : 업무 요약 : |
▼ 해설 보기
이번 퀴즈는 쓰기 모드로 파일을 열어서 본문에 제시된 내용을 작성하도록 코드를 작성하면 됩니다. 그리고 반복문을 통해 몇 주차인지 숫자만 증가시키면서 같은 동작을 50번 반복하도록 하면 되지요.
먼저 1주차 파일을 만드는 코드를 작성해보겠습니다. with 를 써서 파일을 쓰기 모드인 "w" 로 열되 이름은 "1주차.txt" 로 하고 encoding 은 "utf8" 로 해줍니다. 그리고 이 파일은 report_file 이라는 변수명으로 접근할 수 있도록 해줄게요. with 구문 내에서는 report_file 의 write() 함수를 통해 본문에 제시된 보고서 내용을 작성해주면 끝입니다.
with open("1주차.txt", "w", encoding="utf8") as report_file:
report_file.write("- 1 주차 주간보고 -")
report_file.write("\n부서 : ") # 줄바꿈 처리
report_file.write("\n이름 : ")
report_file.write("\n업무 요약 : ")
이 때 write() 는 내용을 있는 그대로 파일에 쓰되 줄바꿈은 해주지 않으므로 2번째 줄부터는 탈출문자를 통해 줄바꿈을 해줍니다. 만약 줄바꿈을 하지 않는다면 파일에는 이런 식으로 내용이 적히게 됩니다.
- 1 주차 주간보고 -부서 : 이름 : 업무 요약 : |
코드를 실행시켜보면 "1주차.txt" 파일이 생기고 본문 내용도 잘 적히는 것을 볼 수 있습니다.
- 1 주차 주간보고 - 부서 : 이름 : 업무 요약 : |
이제는 이 작업을 50번 반복해보겠습니다. 앞에서 작성한 코드를 조금 변경하여 첫 줄에는 range() 를 이용해서 1~50 까지 숫자를 증가시키는 반복문을 먼저 쓰겠습니다.
for i in range(1, 51):
그리고 파일을 여는 부분에서 파일명을 서로 다르게 해주기 위해서 "X주차.txt" 와 같은 방식으로 바꿔볼텐데, 이를 위해 1~50 까지의 숫자 정보를 가지는 i 변수와 합치는 방식으로 하겠습니다. 문자열 여러개를 합칠 때 + 기호를 쓸 수 있는데 i 는 정수이므로 str(i) 를 통해 문자열로 변환해준 다음 둘을 더하도록 합니다.
for i in range(1, 51):
with open(str(i) + "주차.txt", "w", encoding="utf8") as report_file:
write() 부분은 앞에서 작성한 코드를 그대로 가져다 쓰되, 보고서 본문 중 첫 번째 줄에도 몇 주차인지 정보가 필요하므로 format() 을 이용하여 i 값을 넣어주면 됩니다.
다음은 완성된 전체 코드입니다.
for i in range(1, 51):
with open(str(i) + "주차.txt", "w", encoding="utf8") as report_file:
report_file.write("- {0} 주차 주간보고 -".format(i))
report_file.write("\n부서 : ")
report_file.write("\n이름 : ")
report_file.write("\n업무 요약 : ")
코드를 실행시키고 나면 많은 파일이 생길 텐데요. 이 파일들을 삭제하려면 비주얼 스튜디오 코드의 좌측 Explorer 탭에서 "1주차.txt" 파일을 클릭하고 키보드로 Shift 를 누른 상태에서 "50주차.txt" 파일을 클릭하면 연속 선택이 가능하며, 또는 Ctrl 을 누른 상태에서 파일을 하나씩 클릭하면 연속 선택이 가능합니다. 이 상태에서 키보드의 Delete 버튼을 누르거나 마우스 오른쪽 버튼을 클릭하여 Delete 메뉴를 누르면 파일을 한번에 삭제할 수 있습니다.
'파이썬 강의 > 기본편' 카테고리의 다른 글
[파이썬 기본편] 9-2.__init__ (0) | 2021.03.07 |
---|---|
[파이썬 기본편] 9-1.클래스 (4) | 2021.03.06 |
[파이썬 기본편] 8-5.with (4) | 2021.03.04 |
[파이썬 기본편] 8-4.pickle (2) | 2021.03.03 |
[파이썬 기본편] 8-3.파일입출력 (7) | 2021.03.02 |
- Total
- Today
- Yesterday
- 챗GPT
- vscode
- onlineclass
- game
- coloso
- Coding
- 파이썬
- pygame
- Visual Studio Code
- 코랩
- ChatGPT
- 비주얼 스튜디오 코드
- Colab
- repl.it
- Mac
- 파이게임
- 주피터노트북
- Tkinter
- Xcode
- 환경설정
- GUI
- 아나콘다
- pycharm
- Unity
- 행맨
- 나도코딩
- c언어
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |