• 파일을 열어서 점수 정보를 쓰는 기능

score_file = open("score.txt", "w", encoding="utf8") # score.txt : 파일명 # w : write, 쓰기 위한 목적 # utf8 정의가 되지 않으면 한글을 쓸 때 이상한 형태로 쓰일 수 있다. print("수학 : 0", file=score_file) print("영어 : 50", file=score_file) score_file.close() # file을 여는 경우 항상 닫아주어야 한다.
  • 실행결과 같은 directory 내에 score.txt가 생긴다.
  • score.txt 내용은 다음과 같다.
수학 : 0 영어 : 50
  • 다시 실행할 경우, 기존 score.txt 파일에 덮어쓰기가 된다.

score_file = open("score.txt", "a", encoding="utf8") # score.txt : 파일명 # a : append, 내용을 추가한다. score_file.write("과학 : 80") score_file.write("\n코딩 : 100") # .write()를 통했을 때에는 줄바꿈이 없으므로 \n을 넣어준다. score_file.close()
  • 실행결과 score.txt 파일은 다음과 같다.
# 수학 : 0 # 영어 : 50 # 과학 : 80 # 코딩 : 100

score_file = open("score.txt", "r", encoding="utf8") # r : read, 파일에 있는 내용을 읽어오는 목적

score_file = open("score.txt", "r", encoding="utf8") print(score_file.read()) score_file.close() # 출력값 : # 수학 : 0 # 영어 : 50 # 과학 : 80 # 코딩 : 100

score_file = open("score.txt", "r", encoding="utf8") print(score_file.readline()) print(score_file.readline()) print(score_file.readline()) print(score_file.readline()) score_file.close() # 한 줄 읽고 커서는 다음 줄로 이동

출력 결과는 다음과 같다.

수학 : 0 영어 : 50 과학 : 80 코딩 : 100
  • print문은 줄바꿈을 해주기 때문에 한 줄 공백 발생
  • 줄바꿈 안 하고 싶다면 print(score_file.readline(), end="")

score_file = open("score.txt", "r", encoding="utf8") while True: line = score_file.readline() if not line: # line이 없는 경우 = 읽을 내용이 없는 경우 = 문서가 끝난 경우 break # if 조건문 탈출 print(line) # line 내용 출력 score_file.close()

score_file = open("score.txt", "r", encoding="utf8") lines = score_file.readlines() # 모든 데이터를 읽어와서 list 형태로 저장 for line in lines: print(line, end="") score_file.close()