공부 자료실/파이썬(Python)

파이썬(Python) - 파일 입출력

자료수집중 2020. 8. 3.
반응형

 

 

 

지금까지 파이썬을 실행해서 모니터에 나오는 결과 값은 결국 종료하면 지워지게 됩니다.

종료하면 지워지다보니 중요한 결과 값은 따로 저장할 필요성이 있습니다.

그래서 이번에는 파일을 생성해서 결과값을 저장하는 방법중 한가지에 대해서 알아보겠습니다.

 

 

open()

먼저 파일을 새로 만들거나 기존의 파일을 여는 함수는 다음과 같습니다.

파일객체 = open(파일이름 또는 파일경로, 파일 처리 방식)

파일 종류는 t(텍스트 파일), b(이진 파일, 바이너리 파일)로 나눠집니다.

t의 가장 대표적인 확장자인 txt를 이용해서 진행하겠습니다.

파일이름만 적게 되면 현재 프로젝트가 저장된 경로가 기본으로 지정됩니다.

특정 파일을 찾아서 열고 싶다면 파일 경로를 직접 입력하면 됩니다.

ex) "C:/Python/file"

 

 

파일 처리 방식은 다음과 같이 문자로 표현합니다.

기본적으로 파일 처리 방식은 따로 지정하지 않으면 'r'과 't'가 기본 설정값 'rt'입니다.

 

close()

open()을 이용해서 열어준 파일을 닫아주는 함수입니다.

읽기, 쓰기를 수행한 후에 마지막에 사용합니다.

 

 

이제부터 읽기 모드와 쓰기 모드에서 사용할 수 있는 함수에 대해서 알아보겠습니다.

write()

write()를 사용하기 위해서는 쓰기 또는 추가 모드로 처리방식을 선언해야 합니다.

write()는 문자열만 처리합니다.

f = open('new_file.txt', 'wt')
f.write('안녕하세요')
f.close()

만약 뒤에 더 이어서 작성하고 싶다면 w가 아닌 a로 변경합니다.

w는 기존 데이터를 지우고 새롭게 쓰기 때문에 a로 변경해야 기존 데이터를 보존하고 이어서 작성할 수 있습니다.

 

 

writelines()

문자열 리스트를 인수로 받아서 사용합니다. 한 번에 여러 문자열을 입력할 수 있습니다.

요소 끝에 \n을 붙여주지 않으면 한 줄에 한 번에 붙여서 저장됩니다.

b = ["red\n", "blue\n", "green\n", "pink\n", "black\n"]
f = open('new_file.txt', 'r+t')
f.writelines(b)
f.close()

 

 

read()

파일 내용 전체를 읽어 문자열로 반환합니다.

f = open('new_file.txt', 'rt')
print(f.read())
f.close()

 

 

readline()

파일의 한 줄씩 읽어 반환합니다.

여러 번 호출하면 다음다음 다음 줄을 출력해줍니다.

더 이상 반환할 데이터가 없다면 빈 문자열을 반환합니다.

f = open('new_file.txt', 'rt')
print(f.readline())
print(f.readline())
print(f.readline())
print(f.readline())
print(f.readline())
print(f.readline())
f.close()

 

 

readlines()

파일 내용 전체를 읽어 리스트로 반환합니다.

각각의 줄이 요소가 됩니다.

f = open('new_file.txt', 'rt')
print(f.readlines())
f.close()

 

댓글